Function at 0x415d0b
Capabilities:
Parse credit card information

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x34c
mov eax, dword [0x41c040]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, ecx
mov dword [ebp - 0x2cc], edx
mov dword [ebp - 0x2a0], esi
mov dword [ebp - 0x2b4], ebx
mov dword [ebp - 0x2bc], eax
push edi
test esi, esi
je 0x4173fb
test ebx, ebx
je 0x4173fb
test eax, eax
je 0x415d61
cmp dword [eax + 8], 0x4c
jb 0x4173fb
push 0xa0
push 0
push ebx
call sub.ntdll.dll_memset
add esp, 0xc
lea edx, [ebp - 0x2a8]
mov ecx, esi
call fcn.004150aa
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173e9
cmp byte [ebp - 0x280], 0
jne 0x4173f7
mov eax, dword [ebp - 0x294]
mov ecx, dword [ebp - 0x2a8]
mov edi, dword [ebp - 0x2a4]
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x20], ecx
mov dword [ebx + 0x24], edi
mov eax, dword [esi + 0xe4]
mov dword [ebx + 4], eax
mov eax, dword [ebp - 0x284]
cmp eax, 0x30
jle 0x41638e
cmp eax, 0x4c
jg 0x41606b
je 0x41607b
cmp eax, 0x33
je 0x415f8a
cmp eax, 0x3f
jle 0x4173cd
cmp eax, 0x41
jle 0x415e0f
cmp eax, 0x44
jle 0x4173cd
cmp eax, 0x46
jg 0x4173cd
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x66
je 0x415f48
cmp dword [ebp - 0x284], 0x4b
je 0x415e59
cmp dword [ebp - 0x284], 0x47
jne 0x415e0f
jmp 0x415f73
mov dword [ebx], 0xa
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x4b
je 0x415e5f
cmp dword [ebp - 0x284], 0x4c
jne 0x415eb7
and dword [ebx + 0x2c], 0
and dword [ebx + 0x34], 0
lea edi, [ebx + 0x38]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
jmp 0x415f73
cmp dword [ebp - 0x284], 0x4d
jne case.0x416195.92
lea edi, [ebx + 0x28]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x294]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x4e
jne case.0x416195.92
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x4c
je 0x415e9f
push ecx
push ecx
mov ecx, 0xc000a083
call fcn.004180d5
mov edx, eax
jmp 0x4173cd
push ebx
lea edx, [ebp - 0x294]
mov dword [ebx], 9
mov ecx, esi
call fcn.004158ae
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebx], 9
je 0x4173cd
cmp dword [ebx], 0xa
jne 0x415d61
jmp 0x4173cd
xor eax, eax
mov dword [ebp - 0x2bc], eax
cmp byte [esi + 0xe0], al
je 0x415fb8
and dword [ebx], eax
mov dword [ebx + 0x40], 0x14
lea edi, [ebx + 0x28]
mov dword [ebx + 0x38], ecx
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173c4
mov dword [ebx], 2
mov dword [ebx + 0x58], ecx
mov dword [ebx + 0x5c], edi
jmp 0x41602c
cmp byte [ebp - 0x280], 0
mov eax, dword [ebp - 0x284]
jne 0x416046
cmp eax, 4
je 0x416046
cmp eax, 0x34
je 0x4173cd
cmp eax, 1
je 0x416046
sub eax, 0x37
je 0x416023
sub eax, 1
je 0x41601e
sub eax, 1
je 0x416019
dec eax
sub eax, 1
jne 0x41602c
mov edi, dword [ebp - 0x2bc]
test edi, edi
je 0x41602c
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
jmp 0x416026
lea eax, [ebx + 0x38]
jmp 0x416026
lea eax, [ebx + 0x48]
jmp 0x416026
lea eax, [ebx + 0x28]
mov dword [ebp - 0x2bc], eax
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
jns 0x415fc6
jmp 0x4173f7
cmp eax, 0x34
je 0x4173cd
and dword [ebx], 0
lea edi, [ebx + 0x28]
lea esi, [ebp - 0x294]
mov dword [ebx + 0x40], 0x13
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173bb
cmp eax, 0x4f
je 0x41607b
cmp eax, 0x65
jne 0x4173cd
jmp 0x4160b1
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
mov eax, dword [ebp - 0x284]
cmp eax, 0x4f
je 0x41607b
cmp eax, 0x65
jne 0x4160bc
mov dword [ebx], 0xc
jmp 0x4173cd
and dword [ebx + 0x34], 0
and dword [ebx + 0x2c], 0
cmp eax, 0x51
jne 0x41613b
lea edi, [ebx + 0x28]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x294]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x52
jne case.0x416195.92
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
mov eax, dword [ebp - 0x284]
cmp eax, 0x50
jne case.0x416195.92
lea edi, [ebx + 0x38]
mov dword [ebx], 0xb
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x294]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
mov eax, dword [ebp - 0x284]
add eax, 0xffffffad
cmp eax, 0xb
ja case.0x416195.92
jmp dword [eax*4 + 0x41741b]
and dword [ebx + 0x48], 0
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
mov eax, dword [ebp - 0x284]
mov dword [ebx + 0x5c], 3
sub eax, 0x5f
je 0x416385
sub eax, 1
je 0x416379
sub eax, 1
je 0x4162f4
sub eax, 1
je 0x416321
jmp case.0x416195.92
mov dword [ebx + 0x48], 1
jmp 0x4161a0
mov dword [ebx + 0x48], 2
jmp 0x4161a0
mov dword [ebx + 0x48], 3
jmp 0x4161a0
mov dword [ebx + 0x48], 4
jmp 0x4161a0
mov dword [ebx + 0x48], 5
jmp 0x4161a0
mov dword [ebx + 0x48], 6
jmp 0x4161a0
mov dword [ebx + 0x48], 7
jmp 0x4161a0
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x5c
jne case.0x416195.94
mov dword [ebx + 0x48], 9
lea edi, [ebx + 0x4c]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x294]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
je 0x4161a0
jmp 0x4173cd
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x5c
jne case.0x416195.92
mov dword [ebx + 0x48], 8
jmp 0x41627a
push 1
lea edx, [ebp - 0x294]
mov dword [ebx + 0x5c], 2
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x280], 0
jne 0x4173cd
cmp dword [ebp - 0x284], 0x63
jne case.0x416195.92
mov ecx, dword [ebp - 0x2a0]
lea edi, [ebx + 0x60]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x294]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004140bc
jmp 0x415f41
mov dword [ebx + 0x5c], 1
jmp 0x4173cd
and dword [ebx + 0x5c], 0
jmp 0x4173cd
je 0x4172e5
dec eax
sub eax, 1
je 0x417271
dec eax
sub eax, 1
je 0x41724e
sub eax, 1
je 0x41682a
sub eax, 0x1d
je 0x416549
sub eax, 6
je 0x416478
sub eax, 5
jne 0x4173cd
mov dword [ebp - 0x298], eax
lea edi, [ebp - 0x304]
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x27c], eax
push 1
lea edx, [edi - 0x14]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x41642e
cmp byte [edi], 0
jne 0x41642e
mov ecx, dword [ebp - 0x27c]
mov eax, dword [edi - 4]
cmp eax, dword [ecx + 0x404110]
mov eax, dword [ebp - 0x2b4]
jne 0x41642a
add ecx, 0xc
inc eax
add edi, 0x18
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x27c], ecx
cmp ecx, 0x18
jne 0x4163e4
mov ecx, eax
jmp 0x416434
mov ecx, dword [ebp - 0x298]
test edx, edx
js 0x416455
cmp ecx, 2
jne 0x416455
mov dword [ebx], 0xd
lea esi, [ebp - 0x318]
lea edi, [ebx + 0x28]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173bb
and dword [ebx], 0
lea esi, [ebp - 0x318]
imul eax, ecx, 0x18
lea edi, [ebx + 0x28]
add esi, eax
imul eax, ecx, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x404114]
jmp 0x4173b8
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x416540
cmp byte [ebp - 0x280], 0
jne 0x416540
cmp dword [ebp - 0x284], 0x2a
jne 0x416540
mov eax, dword [ebp - 0x2a8]
lea edi, [ebx + 0x28]
lea esi, [ebp - 0x294]
mov dword [ebx + 0x48], eax
mov eax, dword [ebp - 0x2a4]
movsd dword es:[edi], dword [esi]
mov dword [ebx], 5
mov dword [ebx + 0x4c], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x416509
cmp byte [ebp - 0x280], 0
jne 0x416522
cmp dword [ebp - 0x284], 0x2b
jne 0x4164f3
lea edi, [ebx + 0x38]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x416509
cmp dword [ebp - 0x284], 0x29
je 0x4173cd
cmp dword [ebp - 0x284], 4
je 0x41652b
mov ecx, dword [ebp - 0x2a0]
lea edx, [ebp - 0x294]
push 1
call fcn.004140bc
mov edx, eax
test edx, edx
jns 0x4164d2
mov dword [ebx + 0x40], 0x10
jmp 0x416532
mov dword [ebx + 0x40], 0x11
and dword [ebx], 0
lea esi, [ebp - 0x294]
jmp 0x416449
mov dword [ebx + 0x40], 0x12
jmp 0x416532
and dword [ebp - 0x2b4], 0
lea eax, [ebp - 0x2b4]
dec dword [esi + 0xe4]
lea ecx, [esi + 0xe8]
mov edx, dword [esi + 0xe4]
push 0
push eax
call fcn.00417f66
test eax, eax
js 0x417407
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x41680e
cmp byte [ebp - 0x280], 0
jne 0x41680e
cmp dword [ebp - 0x284], 0x23
je 0x4165b4
cmp dword [ebp - 0x284], 0x26
jne 0x41680e
cmp dword [ebp - 0x284], 0x26
jne 0x41664b
lea edi, [ebx + 0x28]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x294]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x48]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x41662f
cmp byte [ebp - 0x280], 0
jne 0x41662f
cmp dword [ebp - 0x284], 0x27
jne 0x41662f
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x41662f
cmp byte [ebp - 0x280], 0
jne 0x41662f
cmp dword [ebp - 0x284], 0x23
je 0x41664b
and dword [ebx], 0
lea esi, [ebp - 0x294]
lea edi, [ebx + 0x28]
mov dword [ebx + 0x40], 7
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173bb
mov eax, dword [ebp - 0x2a8]
lea edi, [ebx + 0x38]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
push 0x10
pop ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2b4]
lea edi, [ebx + 0x60]
add esi, 0x28
rep movsd dword es:[edi], dword [esi]
dec dword [ebx + 4]
mov edi, dword [ebp - 0x2a0]
mov dword [ebx + 0x58], eax
mov eax, dword [ebp - 0x2a4]
mov dword [ebx + 0x5c], eax
mov dword [ebx], 4
jmp 0x4166a7
cmp byte [ebp - 0x280], 0
jne 0x4166bc
cmp dword [ebp - 0x284], 4
je 0x4166bc
cmp dword [ebp - 0x284], 0x25
je 0x4166ec
push 1
lea edx, [ebp - 0x294]
mov ecx, edi
call fcn.004140bc
mov edx, eax
test edx, edx
jns 0x41668c
mov eax, dword [ebp - 0x2a8]
lea edi, [ebx + 0x28]
and dword [ebx], 0
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea ecx, [ebx + 0x38]
mov dword [ecx], eax
mov eax, dword [ebp - 0x2a4]
mov dword [ebx + 0x40], 6
movsd dword es:[edi], dword [esi]
mov dword [ecx + 4], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173cd
cmp dword [ebp - 0x2cc], 0
je 0x416784
mov esi, dword [ebp - 0x2b4]
lea edi, [ebp - 0x2e8]
xor eax, eax
and dword [ebp - 0x27c], 0
stosd dword es:[edi], eax
xor edx, edx
mov ecx, dword [esi + 4]
inc ecx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x2e8]
mov edi, dword [ebp - 0x2cc]
push eax
lea eax, [ebp - 0x27c]
push eax
push ecx
push ebx
mov ecx, edi
call fcn.004157ae
mov edx, eax
cmp edx, 0xc000a083
jne 0x416767
mov eax, dword [ebp - 0x27c]
lea esi, [ebp - 0x2e8]
mov dword [ebx + 0x40], eax
mov eax, dword [ebp - 0x2a8]
lea ecx, [ebx + 0x38]
mov dword [ecx], eax
mov eax, dword [ebp - 0x2a4]
mov dword [ecx + 4], eax
jmp 0x4172c3
test edx, edx
js 0x4173cd
mov edx, dword [esi + 4]
mov ecx, edi
inc edx
call fcn.00417bd9
mov edx, eax
test edx, edx
js 0x4173cd
lea eax, [ebp - 0x2b4]
push eax
lea ecx, [ebx + 0x38]
push ecx
lea eax, [ebx + 0x60]
push eax
mov eax, dword [ebp - 0x2a0]
push eax
mov esi, dword [eax + 0xc0]
mov ecx, esi
call dword [0x41e158]
call esi
mov edx, eax
mov eax, dword [ebp - 0x2b4]
test eax, eax
jne 0x4167ef
test edx, edx
js 0x4173cd
lea eax, [ebp - 0x2b4]
push eax
lea eax, [ebx + 0x48]
push eax
lea eax, [ebx + 0x80]
push eax
mov eax, dword [ebp - 0x2a0]
push eax
mov esi, dword [eax + 0xc0]
mov ecx, esi
call dword [0x41e158]
call esi
mov edx, eax
mov eax, dword [ebp - 0x2b4]
test edx, edx
js 0x4173cd
test eax, eax
je 0x4173cd
lea esi, [ebx + 0x10]
mov dword [ebx + 0x40], 0x1c
jmp 0x41674e
and dword [ebx], 0
lea edi, [ebx + 0x28]
lea esi, [ebp - 0x294]
mov dword [ebx + 0x40], 8
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173bb
mov al, byte [esi + 0xe0]
test al, al
je 0x41685e
cmp dword [esi + 0xe4], 0
jne 0x41685e
lea esi, [ebp - 0x294]
mov dword [ebx + 0x40], 0x1d
mov dword [ebx + 0x38], ecx
and dword [ebx], 0
lea edi, [ebx + 0x28]
movsd dword es:[edi], dword [esi]
xor edx, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173c4
and dword [ebp - 0x2c4], 0
and dword [ebp - 0x2d0], 0
test al, al
jne 0x416877
mov byte [esi + 0xe0], 1
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x41693c
cmp byte [ebp - 0x280], 0
jne 0x41693c
mov ecx, dword [ebp - 0x284]
cmp ecx, 6
je 0x4168b1
cmp ecx, 0x16
jne 0x41693c
mov eax, dword [ebp - 0x2a8]
mov dword [ebx], 3
mov dword [ebx + 0x58], eax
mov dword [ebx + 0x5c], edi
cmp ecx, 0x16
jne 0x416954
lea edi, [ebx + 0x38]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x294]
push 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x48]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x2a0]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x416948
cmp byte [ebp - 0x280], 0
jne 0x416948
cmp dword [ebp - 0x284], 0x17
jne 0x416948
push 1
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x41693c
cmp byte [ebp - 0x280], 0
jne 0x41693c
mov ecx, dword [ebp - 0x284]
cmp ecx, 6
je 0x416954
mov dword [ebx + 0x40], 4
jmp 0x416532
mov dword [ebx + 0x40], 5
jmp 0x416532
mov eax, dword [ebp - 0x2a4]
lea edi, [ebx + 0x28]
and dword [ebx + 0x60], 0
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x2d8], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x2a8]
mov dword [ebp - 0x2d4], edi
mov esi, dword [ebp - 0x2a0]
test edx, edx
js 0x4169c4
push 0
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x4169be
lea edx, [ebp - 0x2a8]
mov ecx, esi
call fcn.004150aa
lea edx, [ebp - 0x294]
mov ecx, esi
call fcn.004150ec
mov edi, dword [ebp - 0x2a8]
mov edx, eax
mov ecx, dword [ebp - 0x284]
cmp ecx, 0x1a
je 0x41712e
cmp ecx, 0x1b
je 0x41712e
cmp ecx, 4
je 0x41712e
cmp byte [ebp - 0x280], 0
jne 0x4173cd
test edx, edx
js 0x4173cd
mov eax, ecx
sub eax, 7
je 0x416e5f
sub eax, 1
je 0x416d36
sub eax, 7
je 0x416c2f
sub eax, 9
je 0x416b16
sub eax, 4
jne 0x41697d
and dword [ebp - 0x2b8], eax
xor ecx, ecx
and dword [ebp - 0x29c], eax
mov dword [ebp - 0x298], ecx
lea ecx, [ebp - 0x144]
mov dword [ebp - 0x27c], ecx
lea edx, [ecx - 0x14]
mov ecx, esi
push 1
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x416aa2
mov ecx, dword [ebp - 0x27c]
cmp byte [ecx], 0
jne 0x416aa2
mov ebx, dword [ebp - 0x29c]
mov eax, dword [ecx - 4]
cmp eax, dword [ebx + 0x404130]
mov ebx, dword [ebp - 0x2b4]
jne 0x416a9a
mov eax, dword [ebp - 0x29c]
add ecx, 0x18
inc dword [ebp - 0x298]
add eax, 0xc
mov dword [ebp - 0x29c], eax
mov dword [ebp - 0x27c], ecx
cmp eax, 0x30
jne 0x416a43
mov ecx, dword [ebp - 0x298]
jmp 0x416aa8
mov ecx, dword [ebp - 0x2b8]
test edx, edx
js 0x417001
cmp ecx, 4
jne 0x416fd2
mov eax, dword [ebp - 0x2bc]
test eax, eax
je 0x416fc4
mov edx, dword [ebx + 0x60]
lea ecx, [ebp - 0x2c4]
push 1
push ecx
mov ecx, eax
call fcn.00417f66
mov dword [ebp - 0x29c], eax
test eax, eax
js 0x417407
mov ebx, dword [ebp - 0x2c4]
push 0x4c
push 0
push ebx
call sub.ntdll.dll_memset
mov edi, ebx
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x128]
lea edi, [ebx + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x416fa3
and dword [ebp - 0x27c], 0
xor ecx, ecx
and dword [ebp - 0x298], 0
mov dword [ebp - 0x29c], ecx
lea ecx, [ebp - 0x1d4]
mov dword [ebp - 0x2b8], ecx
lea edx, [ecx - 0x14]
mov ecx, esi
push 1
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x416b97
mov ecx, dword [ebp - 0x2b8]
cmp byte [ecx], 0
jne 0x416b97
mov edi, dword [ebp - 0x298]
mov eax, dword [ecx - 4]
cmp eax, dword [edi + 0x4040c0]
mov edi, dword [ebp - 0x2a8]
jne 0x416b8f
mov eax, dword [ebp - 0x298]
add ecx, 0x18
inc dword [ebp - 0x29c]
add eax, 0xc
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x2b8], ecx
cmp eax, 0x48
jne 0x416b38
mov ecx, dword [ebp - 0x29c]
jmp 0x416b9d
mov ecx, dword [ebp - 0x27c]
test edx, edx
js 0x417038
cmp ecx, 6
jne 0x41700c
mov eax, dword [ebp - 0x2bc]
test eax, eax
je 0x416fc4
mov edx, dword [ebx + 0x60]
lea ecx, [ebp - 0x2c4]
push 1
push ecx
mov ecx, eax
call fcn.00417f66
mov edx, eax
test edx, edx
js 0x4173f7
mov eax, dword [ebp - 0x2c4]
lea esi, [ebp - 0x1d0]
mov edi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x10]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x30]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x20]
lea esi, [ebp - 0x188]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov word [eax + 0x48], 0
mov edi, dword [ebp - 0x2a8]
mov ecx, dword [ebp - 0x2a4]
mov dword [eax + 0x40], edi
mov dword [eax + 0x44], ecx
jmp 0x416fc4
and dword [ebp - 0x27c], 0
xor ecx, ecx
and dword [ebp - 0x298], 0
mov dword [ebp - 0x29c], ecx
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x2b8], ecx
lea edx, [ecx - 0x14]
mov ecx, esi
push 1
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x416cb0
mov ecx, dword [ebp - 0x2b8]
cmp byte [ecx], 0
jne 0x416cb0
mov edi, dword [ebp - 0x298]
mov eax, dword [ecx - 4]
cmp eax, dword [edi + 0x404050]
mov edi, dword [ebp - 0x2a8]
jne 0x416ca8
mov eax, dword [ebp - 0x298]
add ecx, 0x18
inc dword [ebp - 0x29c]
add eax, 0xc
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x2b8], ecx
cmp eax, 0x48
jne 0x416c51
mov ecx, dword [ebp - 0x29c]
jmp 0x416cb6
mov ecx, dword [ebp - 0x27c]
test edx, edx
js 0x41706c
cmp ecx, 6
jne 0x417040
mov eax, dword [ebp - 0x2bc]
test eax, eax
je 0x416fc4
mov edx, dword [ebx + 0x60]
lea ecx, [ebp - 0x2c4]
push 1
push ecx
mov ecx, eax
call fcn.00417f66
mov edx, eax
test edx, edx
js 0x4173f7
mov eax, dword [ebp - 0x2c4]
lea esi, [ebp - 0x260]
mov edi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x10]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x30]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [eax + 0x20]
lea esi, [ebp - 0x218]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov word [eax + 0x48], 0x100
jmp 0x416c18
and dword [ebp - 0x2c0], 0
xor ecx, ecx
and dword [ebp - 0x298], 0
mov dword [ebp - 0x27c], ecx
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x2b8], ecx
lea edx, [ecx - 0x14]
mov ecx, esi
push 1
call fcn.004140bc
mov edx, eax
mov dword [ebp - 0x29c], edx
test edx, edx
js 0x416dba
mov ecx, dword [ebp - 0x2b8]
cmp byte [ecx], 0
jne 0x416dba
mov edi, dword [ebp - 0x298]
mov eax, dword [ecx - 4]
cmp eax, dword [edi + 0x404000]
mov edi, dword [ebp - 0x2a8]
jne 0x416db2
mov eax, dword [ebp - 0x298]
add ecx, 0x18
inc dword [ebp - 0x27c]
add eax, 0xc
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x2b8], ecx
cmp eax, 0x30
jne 0x416d55
mov ecx, dword [ebp - 0x27c]
jmp 0x416dc0
mov ecx, dword [ebp - 0x2c0]
test edx, edx
js 0x4170b5
cmp ecx, 4
jne 0x417086
mov eax, dword [ebp - 0x2cc]
test eax, eax
je 0x416e06
mov edx, dword [ebx + 4]
lea ecx, [ebp - 0x38]
push ecx
inc edx
mov ecx, eax
call fcn.00417aaf
mov edx, eax
mov dword [ebp - 0x29c], edx
cmp edx, 0xc00000bd
je 0x417074
test edx, edx
js 0x4173f7
mov eax, dword [ebp - 0x2bc]
test eax, eax
je 0x416fbe
mov edx, dword [ebx + 0x60]
lea ecx, [ebp - 0x2c4]
push 1
push ecx
mov ecx, eax
call fcn.00417f66
mov dword [ebp - 0x29c], eax
test eax, eax
js 0x417407
mov ebx, dword [ebp - 0x2c4]
push 0x4c
push 0
push ebx
call sub.ntdll.dll_memset
mov edi, ebx
mov word [ebx + 0x48], 1
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x38]
jmp 0x416b0a
and dword [ebp - 0x2b8], 0
xor ecx, ecx
and dword [ebp - 0x27c], 0
mov dword [ebp - 0x298], ecx
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x2c0], ecx
lea edx, [ecx - 0x14]
mov ecx, esi
push 1
call fcn.004140bc
mov edx, eax
mov dword [ebp - 0x29c], edx
test edx, edx
js 0x416ee6
mov ecx, dword [ebp - 0x2c0]
cmp byte [ecx], 0
jne 0x416ee6
mov edi, dword [ebp - 0x27c]
mov eax, dword [ecx - 4]
cmp eax, dword [edi + 0x4041b0]
mov edi, dword [ebp - 0x2a8]
jne 0x416ede
mov eax, dword [ebp - 0x27c]
add ecx, 0x18
inc dword [ebp - 0x298]
add eax, 0xc
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x2c0], ecx
cmp eax, 0x48
jne 0x416e81
mov ecx, dword [ebp - 0x298]
jmp 0x416eec
mov ecx, dword [ebp - 0x2b8]
test edx, edx
js 0x417129
cmp ecx, 6
jne 0x4170fd
mov eax, dword [ebp - 0x2cc]
test eax, eax
je 0x416f3c
mov edx, dword [ebx + 4]
lea ecx, [ebp - 0xe0]
push ecx
lea ecx, [ebp - 0x98]
inc edx
push ecx
mov ecx, eax
call fcn.00417931
mov edx, eax
mov dword [ebp - 0x29c], edx
cmp edx, 0xc00000bd
je 0x4170df
test edx, edx
js 0x4173f7
mov eax, dword [ebp - 0x2bc]
test eax, eax
je 0x416fbe
mov edx, dword [ebx + 0x60]
lea ecx, [ebp - 0x2c4]
push 1
push ecx
mov ecx, eax
call fcn.00417f66
mov dword [ebp - 0x29c], eax
test eax, eax
js 0x417407
mov ebx, dword [ebp - 0x2c4]
push 0x4c
push 0
push ebx
call sub.ntdll.dll_memset
mov edi, ebx
lea esi, [ebp - 0xe0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x30]
lea esi, [ebp - 0x294]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x20]
lea esi, [ebp - 0x98]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov word [ebx + 0x48], 1
mov edi, dword [ebp - 0x2a8]
add esp, 0xc
mov eax, dword [ebp - 0x2a4]
mov dword [ebx + 0x40], edi
mov dword [ebx + 0x44], eax
mov ebx, dword [ebp - 0x2b4]
mov edx, dword [ebp - 0x29c]
inc dword [ebx + 0x60]
mov ecx, dword [ebp - 0x284]
jmp 0x41697d
mov eax, dword [ebp - 0x2a4]
lea esi, [ebp - 0x158]
and dword [ebx], 0
mov dword [ebx + 0x3c], eax
imul eax, ecx, 0x18
mov dword [ebx + 0x38], edi
lea edi, [ebx + 0x28]
add esi, eax
imul eax, ecx, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x404134]
jmp 0x4170ad
lea esi, [ebp - 0x158]
jmp 0x4170b8
mov eax, dword [ebp - 0x2a4]
lea esi, [ebp - 0x1e8]
and dword [ebx], 0
mov dword [ebx + 0x3c], eax
imul eax, ecx, 0x18
mov dword [ebx + 0x38], edi
lea edi, [ebx + 0x28]
add esi, eax
imul eax, ecx, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x4040c4]
jmp 0x4170ad
lea esi, [ebp - 0x1e8]
jmp 0x4170b8
mov eax, dword [ebp - 0x2a4]
lea esi, [ebp - 0x278]
and dword [ebx], 0
mov dword [ebx + 0x3c], eax
imul eax, ecx, 0x18
mov dword [ebx + 0x38], edi
lea edi, [ebx + 0x28]
add esi, eax
imul eax, ecx, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x404054]
jmp 0x4170ad
lea esi, [ebp - 0x278]
jmp 0x4170b8
mov dword [ebx + 0x38], edi
lea esi, [ebp - 0x38]
mov dword [ebx + 0x40], 0x1f
jmp 0x41684d
mov eax, dword [ebp - 0x2a4]
lea esi, [ebp - 0x68]
and dword [ebx], 0
mov dword [ebx + 0x3c], eax
imul eax, ecx, 0x18
mov dword [ebx + 0x38], edi
lea edi, [ebx + 0x28]
add esi, eax
imul eax, ecx, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x404004]
mov dword [ebx + 0x40], eax
jmp 0x4173cd
lea esi, [ebp - 0x68]
mov eax, dword [ebp - 0x2a4]
and dword [ebx], 0
mov dword [ebx + 0x3c], eax
imul eax, ecx, 0x18
mov dword [ebx + 0x38], edi
lea edi, [ebx + 0x28]
add esi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x40], 0xb
jmp 0x4173cd
and dword [ebx], 0
lea esi, [ebp - 0xe0]
lea edi, [ebx + 0x28]
mov dword [ebx + 0x40], 0x1e
movsd dword es:[edi], dword [esi]
xor edx, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173bb
mov eax, dword [ebp - 0x2a4]
lea esi, [ebp - 0xf8]
and dword [ebx], 0
mov dword [ebx + 0x3c], eax
imul eax, ecx, 0x18
mov dword [ebx + 0x38], edi
lea edi, [ebx + 0x28]
add esi, eax
imul eax, ecx, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x4041b4]
jmp 0x4170ad
and dword [ebx], 0
jmp 0x4170d3
cmp byte [ebp - 0x280], 0
jne 0x4173cd
test edx, edx
js 0x4173cd
xor eax, eax
lea edi, [ebp - 0x2ac]
xor esi, esi
and dword [ebp - 0x2b0], esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x2cc]
test eax, eax
je 0x4171ab
mov ecx, dword [ebx + 4]
lea edi, [ebp - 0x2b0]
xor eax, eax
mov edx, dword [ebp - 0x2bc]
and dword [ebp - 0x2c0], esi
inc ecx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x2c0]
push eax
push ecx
mov ecx, dword [ebp - 0x2cc]
push ebx
call fcn.004157ae
mov esi, dword [ebp - 0x2c0]
mov edx, eax
mov ecx, dword [ebp - 0x284]
mov eax, dword [ebp - 0x2cc]
cmp edx, 0xc000a083
jne 0x4171dc
mov eax, dword [ebp - 0x2d4]
lea edi, [ebx + 0x28]
and dword [ebx], 0
xor edx, edx
mov dword [ebx + 0x40], esi
lea esi, [ebp - 0x2b0]
movsd dword es:[edi], dword [esi]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 0x2d8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173ca
test edx, edx
js 0x4173f7
cmp ecx, 0x1b
jne 0x41720f
mov byte [ebx + 0x64], 1
test eax, eax
je 0x4173cd
mov edx, dword [ebx + 4]
mov ecx, eax
inc edx
call fcn.00417bd9
mov edx, eax
test edx, edx
jns 0x4173cd
jmp 0x4173f7
mov edi, dword [ebp - 0x2a0]
lea eax, [ebp - 0x2d0]
mov edx, dword [ebx + 4]
push 1
push eax
lea ecx, [edi + 0xe8]
call fcn.00417f66
mov edx, eax
test edx, edx
js 0x4173f7
inc dword [edi + 0xe4]
mov esi, ebx
mov edi, dword [ebp - 0x2d0]
push 0x28
pop ecx
rep movsd dword es:[edi], dword [esi]
jmp 0x4173cd
cmp dword [esi + 0xe4], 0
jne 0x417262
mov dword [ebx], 1
jmp 0x4173cd
and dword [ebx], 0
mov dword [ebx + 0x40], 9
jmp 0x415fa3
cmp byte [esi + 0xe0], 0
je 0x4172da
cmp dword [esi + 0xe4], 0
jne 0x4172da
lea eax, [ebp - 0x2c5]
mov ecx, esi
push eax
lea edx, [ebp - 0x294]
call fcn.00415658
mov edx, eax
test edx, edx
js 0x4173cd
cmp byte [ebp - 0x2c5], 0
jne 0x4172d4
mov eax, dword [ebp - 0x2a8]
lea esi, [ebp - 0x294]
mov dword [ebx + 0x38], eax
mov dword [ebx + 0x3c], edi
mov dword [ebx + 0x40], 0x1d
and dword [ebx], 0
lea edi, [ebx + 0x28]
movsd dword es:[edi], dword [esi]
xor edx, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4173cd
mov ecx, dword [ebp - 0x2a8]
mov dword [ebx], 7
jmp 0x415fa3
xor eax, eax
cmp byte [esi + 0xe0], al
je 0x417318
cmp dword [esi + 0xe4], eax
jne 0x417318
mov dword [ebx + 0x3c], edi
lea esi, [ebp - 0x294]
lea edi, [ebx + 0x28]
mov dword [ebx + 0x38], ecx
movsd dword es:[edi], dword [esi]
mov dword [ebx], eax
mov dword [ebx + 0x40], 0x1d
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x415f41
mov dword [ebp - 0x2c0], eax
lea edi, [ebp - 0x334]
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x2d0], eax
push 1
lea edx, [edi - 0x14]
mov ecx, esi
call fcn.004140bc
mov edx, eax
test edx, edx
js 0x41737a
cmp byte [edi], 0
jne 0x41737a
mov ecx, dword [ebp - 0x2d0]
mov eax, dword [edi - 4]
cmp eax, dword [ecx + 0x4040a0]
mov eax, dword [ebp - 0x27c]
jne 0x417376
add ecx, 0xc
inc eax
add edi, 0x18
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x2d0], ecx
cmp ecx, 0x18
jne 0x417330
mov ecx, eax
jmp 0x417380
mov ecx, dword [ebp - 0x2c0]
test edx, edx
js 0x41739a
cmp ecx, 2
jne 0x41739a
mov dword [ebx], 8
lea esi, [ebp - 0x348]
jmp 0x416449
and dword [ebx], 0
lea esi, [ebp - 0x348]
imul eax, ecx, 0x18
lea edi, [ebx + 0x28]
add esi, eax
imul eax, ecx, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x4040a4]
mov dword [ebx + 0x40], eax
mov eax, dword [ebp - 0x2a8]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 0x2a4]
mov dword [ebx + 0x3c], eax
mov eax, dword [ebp - 0x2a0]
mov eax, dword [eax + 0x14]
sub eax, dword [ebx + 0x10]
cmp byte [ebp - 0x280], 0
mov dword [ebx + 0x14], eax
je 0x4173f7
test edx, edx
js 0x4173f7
push ecx
push ecx
mov ecx, 0xc000a083
call fcn.004180d5
mov edx, eax
mov eax, edx
jmp 0x417407
push ecx
push ecx
mov ecx, 0xc000000d
call fcn.004180d5
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041ba49
mov esp, ebp
pop ebp
ret 8