Function at 0x41ba45
Capabilities:
Check for software breakpoints
Parse credit card information

Disassembly:
cmp eax, 0x9e
je 0x41b534
push ebx
push 0xd
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov dword [ebp - 0xc], eax
jne 0x41b562
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x18], eax
call fcn.0041a919
test eax, eax
jne 0x41f258
mov eax, dword [ebp - 0xc]
push eax
push edi
mov ecx, esi
call fcn.0041811b
mov edi, eax
mov eax, dword [esi + 0xc]
push eax
mov ecx, esi
call fcn.0041a935
test al, al
je 0x41b596
push edi
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
push 1
push edi
push edi
push 0x756a
mov ecx, esi
call fcn.004ae12b
jmp case.0x448f72.12
mov eax, dword [esi + 0xc]
push ebx
push eax
push 0x7671
mov ecx, esi
call fcn.004ae269
jmp 0x449453
mov ecx, dword [esi + 0x24]
cmp dword [ecx], 0x3e
je 0x449301
jmp 0x41aa79
push 0x83
push 1
push esi
call fcn.004ae560
add esp, 0xc
jmp 0x44937b
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x4491ee
mov eax, edx
push eax
push eax
lea eax, [edi + 0x1c]
push eax
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
mov eax, dword [esi + 0xc]
mov dword [ebp - 4], eax
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
add eax, 0xffffff1d
cmp eax, 5
jbe 0x449913
jmp 0x41aa54
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x449933
push ebx
push ecx
push 0x761f
mov ecx, esi
mov dword [edi + 0x14], 0
call fcn.004ae269
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x4493a0
mov ecx, dword [esi + 0xc]
mov edx, dword [ecx + 0x30]
xor eax, eax
cmp dword [edx], 0x2d
push ebx
setne al
add eax, 0x7577
push eax
jmp 0x41b6e9
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x448f31
push ebx
push 0x4d
mov ecx, esi
call fcn.0043c5e3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [esi + 0x10]
push ecx
push 0x4c
call fcn.0040917b
mov dword [eax], 0x4c
mov edi, dword [esi + 0xc]
mov edx, dword [edi + 4]
mov dword [eax + 4], edx
mov ecx, dword [edi + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, esi
mov dword [ebp + 8], eax
call fcn.0040be7d
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x30]
mov eax, dword [eax]
cmp eax, 6
je 0x41ab06
cmp eax, 0xe6
je 0x41ab06
push ebx
push 0
mov ecx, esi
call fcn.0040c038
mov edi, dword [ebp + 8]
mov dword [edi + 0x44], eax
jmp 0x41ab46
push edi
push edi
lea ecx, [ebp - 0x28]
push ecx
mov ecx, esi
mov dword [ebp - 0x2c], 0x80
call fcn.0040c2cb
lea ecx, [ebp - 0x28]
call fcn.0042029f
push ebx
push edi
lea eax, [ebp - 0x4c]
push eax
lea edx, [ebp - 0x2c]
push 0
mov ecx, esi
mov dword [ebp - 0x4c], edx
call fcn.00410854
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], eax
mov dword [eax + 0x24], 0
mov edi, ecx
cmp byte [ebx], 0
je 0x41ab56
push 0
push esi
call fcn.004ae560
add esp, 8
mov edx, dword [esi + 0xc]
push edx
push edi
mov ecx, esi
call fcn.0040c271
push edi
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
mov ecx, esi
call fcn.0043b6fc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edi, edi
mov ecx, esi
call fcn.0040be7d
push ebx
mov ecx, esi
call fcn.0041ba45
mov ecx, dword [esi + 0xc]
cmp dword [ecx], 0xe2
jne 0x422b6e
jmp 0x41ab86
cmp eax, 0x3a
je 0x440f17
push ebx
push 0x7586
jmp 0x41b6e9
mov eax, dword [esi + 0x24]
mov dword [ebp - 4], eax
mov eax, dword [eax]
cmp eax, 0x39
mov dword [ebp - 0xc], eax
je 0x4334fe
cmp eax, 0x3b
je 0x4334fe
cmp eax, 0x3a
je 0x440f17
cmp byte [esi + 0x24a], 0
push ebx
mov ecx, esi
je 0x41ac11
mov eax, dword [esi + 0xc]
push eax
push 0x8ca5
call fcn.004ae269
push ebx
lea ecx, [ebp + 0xb]
push ecx
push 0
mov ecx, esi
call fcn.004229b5
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x8ca5
jmp 0x41b6eb
mov eax, dword [eax + 0x50]
push ebx
lea ecx, [ebp + 0xb]
push ecx
push eax
mov ecx, esi
call fcn.004229b5
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov dword [edi + 0x44], eax
mov al, byte [ebp + 0xb]
neg al
mov ecx, esi
sbb eax, eax
add eax, 0x48
mov dword [edi], eax
mov edx, dword [esi + 0xc]
push edx
push edi
call fcn.0040c271
push edi
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [ebp - 4]
mov dword [ecx], 0x4b
mov edx, dword [esi + 0xc]
push edx
push edi
mov ecx, esi
call fcn.0040c271
push edi
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp ecx, 0x48
je 0x433314
cmp ecx, 0x4b
je 0x433314
test eax, eax
je 0x41acaf
mov ecx, dword [eax]
cmp ecx, 0x47
jl 0x41aca8
cmp ecx, 0x4b
jle 0x41acd5
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x41ac9c
mov eax, dword [esi + 0xc]
push ebx
push 1
push eax
push edi
push 0x758b
mov ecx, esi
call fcn.004ae12b
push ebx
push edi
mov ecx, esi
call fcn.004b05fa
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push eax
mov ecx, esi
call fcn.0040b6b6
push ebx
push edi
mov ecx, esi
call fcn.004b05fa
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi + 0xc]
push ebx
push eax
push 0x761e
call fcn.004ae269
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x433327
push 0x42
push 1
push esi
call fcn.004ae560
add esp, 0xc
jmp 0x443367
mov ecx, esi
call fcn.004ad7a6
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0xc], eax
push ecx
add eax, 0xc
push eax
mov ecx, esi
call fcn.0040c2cb
mov ecx, dword [esi + 0xc]
push ebx
push ecx
push 0x7553
mov ecx, esi
call fcn.004ae269
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x42378e
push 0x83
push 0xe6
push 2
push esi
call fcn.004ae560
add esp, 0x10
jmp 0x42011b
mov ecx, esi
call fcn.004ad7a6
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0xc], eax
push ecx
add eax, 0xc
push eax
mov ecx, esi
call fcn.0040c2cb
mov ecx, dword [esi + 0xc]
push ebx
push ecx
push 0x7553
mov ecx, esi
call fcn.004ae269
push 0x83
push 1
push esi
call fcn.004ae560
add esp, 0xc
jmp 0x420155
mov ecx, esi
call fcn.004ad7a6
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 8], eax
push ecx
add eax, 0xc
push eax
mov ecx, esi
call fcn.0040c2cb
mov eax, dword [esi + 0xc]
push ebx
push eax
push 0x7553
mov ecx, esi
call fcn.004ae269
push 0x7b
push 1
push esi
call fcn.004ae560
add esp, 0xc
jmp 0x42018f
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x42019b
test eax, eax
je 0x41ae21
mov ecx, dword [eax]
cmp ecx, 0x44
je 0x41aec8
cmp ecx, 0x45
je 0x41aec8
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x41ae06
mov edx, dword [esi + 0xc]
push ebx
push 1
push edx
push edi
push 0x758c
mov ecx, esi
call fcn.004ae12b
mov eax, dword [esi + 0x10]
push eax
push 0x28
call fcn.0040917b
mov ebx, eax
mov dword [ebx], 0x62
mov ecx, dword [edi + 4]
mov dword [ebx + 4], ecx
mov edx, dword [edi + 0xc]
mov dword [ebx + 0xc], edx
mov edx, dword [esi + 0xc]
cmp edx, dword [esi + 0x238]
jne 0x41ae83
lea esp, [esp]
mov edx, dword [edx + 0x34]
mov ecx, dword [edx + 0x34]
mov eax, dword [ecx]
cmp eax, 0x6f
je 0x41ae76
cmp eax, 0xdc
jne 0x41ae78
mov edx, ecx
mov eax, dword [edx + 0x34]
cmp dword [eax], 0xcb
je 0x41ae62
mov ecx, dword [edx + 0x34]
mov eax, dword [ecx + 4]
mov dword [ebx + 8], eax
mov eax, dword [edx + 0x34]
mov ecx, dword [eax + 0x10]
test ecx, ecx
mov eax, dword [eax + 0xc]
je 0x41ae9d
lea eax, [eax + ecx - 1]
mov ecx, ebx
mov dword [ebx + 0x10], eax
call fcn.0040c254
test al, al
je 0x41aeb7
mov ecx, dword [edx + 4]
mov dword [ebx + 0x30], ecx
mov edx, dword [edx + 0xc]
mov dword [ebx + 0x38], edx
push ebx
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push eax
mov ecx, esi
call fcn.0040b6b6
mov edx, dword [esi + 0x1c4]
test edx, edx
je 0x440f17
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
add ecx, 0xffffffc1
cmp ecx, 1
ja 0x41af15
test edx, edx
jle 0x41af15
mov edx, dword [edi + 4]
mov dword [eax + 0x34], edx
mov ecx, dword [edi + 0xc]
mov eax, dword [esi + 0x24]
mov dword [eax + 0x3c], ecx
mov edx, dword [esi + 0x24]
add dword [esi + 0x1c4], 0xffffffff
mov byte [edx + 0x2c], 1
mov eax, dword [esi + 0x24]
mov ecx, dword [eax + 0x14]
mov dword [esi + 0x24], ecx
push 0
push 0x62
push edi
mov ecx, esi
call fcn.00412bd9
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp dword [ebp + 8], 0
je 0x41af51
mov eax, dword [esi + 0xc]
push ebx
push eax
push 0x7d25
mov ecx, esi
call fcn.004ae269
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x43e6ac
test eax, eax
je 0x41af73
lea esp, [esp]
mov ecx, dword [eax]
cmp ecx, 0x44
je 0x41affb
cmp ecx, 0x45
je 0x41affb
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x41af58
mov ecx, dword [esi + 0xc]
push ebx
push 1
push ecx
push edi
push 0x758c
mov ecx, esi
call fcn.004ae12b
mov edx, dword [esi + 0x10]
push edx
push 0x28
call fcn.0040917b
mov ecx, eax
mov dword [ecx], 0x62
mov eax, dword [edi + 4]
mov dword [ecx + 4], eax
mov edx, dword [edi + 0xc]
mov dword [ecx + 0xc], edx
mov edx, dword [esi + 0xc]
cmp edx, dword [esi + 0x238]
mov dword [ebp - 0xc], ecx
jne 0x41afd9
lea esp, [esp]
mov edx, dword [edx + 0x34]
mov eax, dword [edx + 0x34]
mov eax, dword [eax]
cmp eax, 0x6f
je 0x41afcb
cmp eax, 0xdc
jne 0x41afce
mov edx, dword [edx + 0x34]
mov eax, dword [edx + 0x34]
cmp dword [eax], 0xcb
je 0x41afb7
mov eax, dword [edx + 0x34]
mov eax, dword [eax + 4]
mov dword [ecx + 8], eax
mov eax, dword [edx + 0x34]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x41b060
mov ecx, dword [edx + 0x34]
mov ecx, dword [ecx + 0xc]
lea eax, [eax + ecx - 1]
mov ecx, dword [ebp - 0xc]
jmp 0x41b066
push eax
mov ecx, esi
call fcn.0040b6b6
mov edx, dword [esi + 0x1c4]
test edx, edx
je 0x41b089
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
add ecx, 0xffffffc1
cmp ecx, 1
ja 0x41b044
test edx, edx
jle 0x41b044
mov ecx, dword [edi + 4]
mov dword [eax + 0x34], ecx
mov eax, dword [edi + 0xc]
mov edx, dword [esi + 0x24]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x24]
add dword [esi + 0x1c4], 0xffffffff
mov byte [ecx + 0x2c], 1
mov edx, dword [esi + 0x24]
mov eax, dword [edx + 0x14]
mov dword [esi + 0x24], eax
push 0
push 0x62
push edi
mov ecx, esi
call fcn.00412bd9
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x43e6ac
mov eax, dword [edx + 0x34]
mov eax, dword [eax + 0xc]
mov dword [ecx + 0x10], eax
call fcn.0040c254
test al, al
mov eax, dword [ebp - 0xc]
je 0x41b081
mov ecx, dword [edx + 4]
mov dword [eax + 0x30], ecx
mov edx, dword [edx + 0xc]
mov dword [eax + 0x38], edx
push eax
mov ecx, esi
call fcn.0040d176
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x43e6ac
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x43e66e
mov word [eax + 0x50], cx
mov dword [eax + 0x28], ebx
mov eax, dword [eax + 0x14]
add ecx, 1
cmp eax, edx
jne 0x41b0a9
pop edi
pop esi
mov dword [edx + 0x28], ebx
mov word [edx + 0x50], cx
pop ebx
mov esp, ebp
pop ebp
ret 4
movzx ecx, byte [ebx]
mov edx, dword [esi + 0xc]
push ecx
push edx
push 0x786a
mov ecx, esi
call fcn.004ae2ab
mov ecx, esi
call fcn.0040be7d
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
cmp ecx, 0x39
je 0x41b1d9
cmp ecx, 0x3b
je 0x41b1d9
cmp ecx, 0x3c
je 0x41b1d9
test eax, eax
je 0x41b121
mov ecx, dword [eax]
cmp ecx, 0x39
je 0x41b18c
cmp ecx, 0x3b
je 0x41b18c
cmp ecx, 0x3c
je 0x41b18c
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x41b109
mov ecx, dword [esi + 0xc]
push ebx
push 1
push ecx
push edi
push 0x7587
mov ecx, esi
call fcn.004ae12b
mov edx, dword [esi + 0x10]
push edx
push 0x24
call fcn.0040917b
mov ebx, eax
mov dword [ebx], 0x4e
mov eax, dword [edi + 4]
mov dword [ebx + 4], eax
mov ecx, dword [edi + 0xc]
mov dword [ebx + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp edx, dword [esi + 0x238]
jne 0x41ae83
lea ebx, [ebx]
mov edx, dword [edx + 0x34]
mov ecx, dword [edx + 0x34]
mov eax, dword [ecx]
cmp eax, 0x6f
je 0x41b179
cmp eax, 0xdc
jne 0x41b17b
mov edx, ecx
mov eax, dword [edx + 0x34]
cmp dword [eax], 0xcb
jne 0x41ae83
jmp 0x41b165
push eax
mov ecx, esi
call fcn.0040b6b6
mov edx, dword [esi + 0x1c4]
test edx, edx
je 0x440f17
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
add ecx, 0xffffffc1
cmp ecx, 1
ja 0x41b1d9
test edx, edx
jle 0x41b1d9
mov ecx, dword [edi + 4]
mov dword [eax + 0x34], ecx
mov eax, dword [edi + 0xc]
mov edx, dword [esi + 0x24]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x24]
add dword [esi + 0x1c4], 0xffffffff
mov byte [ecx + 0x2c], 1
mov edx, dword [esi + 0x24]
mov eax, dword [edx + 0x14]
mov dword [esi + 0x24], eax
push 0
push 0x4e
push edi
mov ecx, esi
call fcn.00412bd9
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edx, dword [esi + 0x10]
push edx
push 0x24
call fcn.0040917b
mov ebx, eax
mov ecx, esi
mov dword [ebx], 0x7f
call fcn.0040be7d
jmp 0x420092
movzx eax, byte [ebx]
mov ecx, dword [esi + 0xc]
push eax
push ecx
push 0x7859
mov ecx, esi
call fcn.004ae2ab
mov ecx, esi
call fcn.0040be7d
mov eax, dword [esi + 0x24]
cmp dword [eax], 0x46
je 0x41b342
test eax, eax
je 0x41b24d
cmp dword [eax], 0x46
sete cl
test cl, cl
jne 0x41b2f5
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x41b238
mov edx, dword [esi + 0xc]
push ebx
push 1
push edx
push edi
push 0x758a
mov ecx, esi
call fcn.004ae12b
mov eax, dword [esi + 0x10]
push eax
push 0x24
call fcn.0040917b
mov ebx, eax
mov dword [ebx], 0x63
mov ecx, dword [edi + 4]
mov dword [ebx + 4], ecx
mov edx, dword [edi + 0xc]
mov dword [ebx + 0xc], edx
mov edx, dword [esi + 0xc]
cmp edx, dword [esi + 0x238]
jne 0x41b2ac
mov edx, dword [edx + 0x34]
mov ecx, dword [edx + 0x34]
mov eax, dword [ecx]
cmp eax, 0x6f
je 0x41b29f
cmp eax, 0xdc
jne 0x41b2a1
mov edx, ecx
mov eax, dword [edx + 0x34]
cmp dword [eax], 0xcb
je 0x41b28b
mov ecx, dword [edx + 0x34]
mov eax, dword [ecx + 4]
mov dword [ebx + 8], eax
mov eax, dword [edx + 0x34]
mov ecx, dword [eax + 0x10]
test ecx, ecx
mov eax, dword [eax + 0xc]
je 0x41b2c6
lea eax, [eax + ecx - 1]
mov ecx, ebx
mov dword [ebx + 0x10], eax
call fcn.0040c254
test al, al
je 0x4200aa
mov ecx, dword [edx + 4]
mov dword [ebx + 0x30], ecx
mov edx, dword [edx + 0xc]
push ebx
mov ecx, esi
mov dword [ebx + 0x38], edx
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push eax
mov ecx, esi
call fcn.0040b6b6
mov edx, dword [esi + 0x1c4]
test edx, edx
je 0x440f17
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
add ecx, 0xffffffc1
cmp ecx, 1
ja 0x41b342
test edx, edx
jle 0x41b342
mov edx, dword [edi + 4]
mov dword [eax + 0x34], edx
mov ecx, dword [edi + 0xc]
mov eax, dword [esi + 0x24]
mov dword [eax + 0x3c], ecx
mov edx, dword [esi + 0x24]
add dword [esi + 0x1c4], 0xffffffff
mov byte [edx + 0x2c], 1
mov eax, dword [esi + 0x24]
mov ecx, dword [eax + 0x14]
mov dword [esi + 0x24], ecx
push 0
push 0x63
push edi
mov ecx, esi
call fcn.00412bd9
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x440f07
mov eax, dword [esi + 0x10]
push eax
push 0x24
call fcn.0040917b
mov ebx, eax
mov ecx, esi
mov dword [ebx], 0x7e
call fcn.0040be7d
mov ecx, dword [edi + 4]
mov dword [ebx + 4], ecx
mov edx, dword [edi + 0xc]
mov dword [ebx + 0xc], edx
mov eax, dword [esi + 0xc]
push eax
jmp 0x4200a2
push ebx
push edi
mov ecx, esi
call fcn.004ae5e8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov dword [ebp + 8], 0x8c
jmp 0x420079
test eax, eax
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x30]
sete dl
push ebx
push edx
push ecx
push edi
push 0x7571
mov ecx, esi
call fcn.004ae12b
jmp 0x42005e
mov dword [ebp + 8], 0x87
jmp 0x420079
mov dword [ebp + 8], 0x88
jmp 0x420079
mov edx, dword [esi + 0xc]
test eax, eax
mov eax, dword [edx + 0x30]
sete cl
push ebx
push ecx
push eax
push edi
push 0x7572
mov ecx, esi
call fcn.004ae12b
jmp 0x441070
mov dword [ebp + 8], 0x8a
jmp 0x420079
cmp byte [esi + 0x24c], 0
je case.0x4237eb.1
cmp dword [esi + 0x250], 0
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x30]
sete dl
push ebx
push edx
mov edx, dword [eax]
sub edx, 0x5e
neg edx
sbb edx, edx
push ecx
and edx, 0xfffff897
push edi
add edx, 0x80f0
push edx
mov ecx, esi
call fcn.004ae12b
mov eax, dword [esi + 0x250]
mov dword [ebp + 8], eax
jmp 0x420067
mov eax, dword [esi + 0xc]
push eax
mov ecx, esi
call fcn.00420346
neg al
push ebx
sbb eax, eax
add eax, 0x8f
mov dword [ebp + 8], eax
mov eax, dword [esi + 0xc]
push eax
push 0x7620
call fcn.004ae269
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x420067
push ebx
mov ecx, esi
call fcn.004ae7d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
mov ecx, esi
call fcn.004af235
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
mov ecx, esi
call fcn.004b0ddb
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
push 1
mov ecx, esi
call fcn.0044d21b
mov dword [ebp + 8], eax
jmp 0x41ba96
push ebx
push 0x7651
jmp 0x41b6e9
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x24], eax
cmp byte [ebx], 0
je 0x440f0f
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x440f0f
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x24], eax
cmp byte [ebx], 0
je 0x440f0f
push 0
push esi
call fcn.004ae560
mov ebx, dword [ebp + 8]
add esp, 8
jmp 0x43b246
push edi
mov ecx, esi
call fcn.004ad7b8
jmp 0x41a94d
mov edx, dword [edi + 0x30]
mov eax, dword [edx]
add eax, 0xffffff1a
cmp eax, 0x10
ja case.0x41b54a.231
movzx eax, byte [eax + 0x41ba34]
jmp dword [eax*4 + 0x41ba2c]
push ebx
mov ecx, esi
call fcn.004b0364
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0xe6
push 1
push esi
call fcn.004ae560
add esp, 0xc
jmp 0x41a96e
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x28], eax
cmp byte [ebx], 0
je 0x43340e
push 0
push esi
call fcn.004ae560
add esp, 8
jmp 0x43340e
cmp dword [edi + 0x28], 0
jne 0x41a9a2
mov ecx, dword [esi + 0xc]
cmp dword [ecx], 0xcc
je 0x41a9a2
mov edx, dword [edi + 0x24]
mov eax, dword [edx]
cmp eax, 0x13
je 0x41a9a2
cmp eax, 0x14
je 0x41a9a2
cmp eax, 0x15
je 0x41a9a2
cmp eax, 0x16
je 0x41a9a2
cmp eax, 0x17
je 0x41a9a2
cmp eax, 0x18
je 0x41a9a2
cmp eax, 0x19
je 0x41a9a2
cmp eax, 0x1a
je 0x41a9a2
cmp eax, 0x1b
je 0x41a9a2
cmp eax, 0x1c
je 0x41a9a2
cmp eax, 0x1d
je 0x41a9a2
cmp eax, 0x1e
je 0x41a9a2
cmp eax, 0x1f
je 0x41a9a2
cmp eax, 0x20
je 0x41a9a2
cmp eax, 0x21
je 0x41a9a2
movzx eax, byte [ebx]
push eax
push ecx
push 0x7850
mov ecx, esi
call fcn.004ae2ab
mov cl, byte [esi + 0x259]
push ebx
lea eax, [edi + 0x28]
mov byte [ebp + 0xb], cl
push eax
mov ecx, esi
mov byte [esi + 0x259], 0
call fcn.0040da3d
mov eax, dword [esi + 0xc]
mov dl, byte [ebp + 0xb]
push eax
push edi
mov ecx, esi
mov byte [esi + 0x259], dl
call fcn.0040c271
jmp 0x41a9a2
cmp byte [esi + 0x25f], 0
je case.0x41ba7c.110
movzx ecx, byte [ebx]
mov edx, dword [esi + 0xc]
push ecx
push edx
push 0xa53f
mov ecx, esi
call fcn.004ae2ab
jmp case.0x41ba7c.110
push ebx
mov ecx, esi
call fcn.004aea6d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
push 0x7548
jmp 0x41b6e9
mov ecx, dword [esi + 4]
cmp dword [ecx + 0x18], 2
push ebx
sete al
neg al
sbb eax, eax
and eax, 0xffffffc2
add eax, 0x786d
push eax
jmp 0x41b6e9
push ebx
push 0x785e
jmp 0x41b6e9
push ebx
push 0x7553
mov ecx, esi
call fcn.004ae91b
push eax
mov ecx, esi
call fcn.0040d176
jmp 0x440f17
push ebp
mov ebp, esp
sub esp, 0x4c
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov esi, ecx
mov edi, edi
cmp byte [esi + 0x249], 0
mov edi, dword [esi + 0xc]
jne 0x448f5b
mov eax, dword [edi]
add eax, 0xffffffff
cmp eax, 0xe2
ja case.0x41ba7c.1
movzx ecx, byte [eax + 0x41b890]
jmp dword [ecx*4 + 0x41b7e0]
cmp dword [edi], 0xe3
mov dword [ebp + 8], 0
je 0x41b4c9
push ebx
mov ecx, esi
call fcn.00410599
push 0x180
mov ecx, eax
mov dword [ebp - 0x18], eax
call fcn.0040a935
test eax, eax
je 0x4403cf
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
push ebx
push edi
push eax
push ecx
mov ecx, esi
call fcn.00410854
test eax, eax
je 0x440f17
push eax
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi + 0x10]
push eax
push 0x24
call fcn.0040917b
mov ebx, eax
mov dword [ebx], 1
mov ecx, dword [edi + 4]
mov dword [ebx + 4], ecx
mov edx, dword [edi + 0xc]
mov dword [ebx + 0xc], edx
mov eax, dword [edi + 0x30]
push eax
push ebx
mov ecx, esi
call fcn.0040c271
push ebx
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [esi + 0x10]
push ecx
push 0x34
call fcn.0040917b
mov ecx, eax
mov eax, dword [ebp - 0x18]
mov dword [ebp + 8], ecx
call fcn.0041a919
mov edx, dword [ebp - 0xc]
mov dword [ecx], eax
mov dword [ecx + 0x24], edx
mov eax, dword [edi + 4]
mov dword [ecx + 4], eax
mov edx, dword [edi + 0xc]
mov dword [ecx + 0xc], edx
mov eax, dword [esi + 0xc]
push eax
push edi
add ecx, 0x2c
push ecx
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
jmp 0x41b577
cmp byte [esi + 0x24c], 0
je 0x41b3d4
mov eax, dword [esi + 0x250]
cmp eax, 0x87
jne 0x41b3b4
mov edx, dword [esi + 0x250]
mov dword [ebp + 8], edx
cmp dword [ebp + 8], 0x8e
je 0x420080
cmp dword [ebp + 8], 0x8f
je 0x420080
mov ecx, esi
call fcn.0040be7d
mov ecx, dword [esi + 0x10]
push ecx
push 0x24
call fcn.0040917b
mov edx, dword [ebp + 8]
mov ebx, eax
mov dword [ebx], edx
mov eax, dword [edi + 4]
mov dword [ebx + 4], eax
mov ecx, dword [edi + 0xc]
mov dword [ebx + 0xc], ecx
mov edx, dword [esi + 0xc]
push edx
push ebx
mov ecx, esi
call fcn.0040c271
push ebx
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.0040be7d
mov edx, dword [esi + 0xc]
cmp dword [edx], 0x2c
je 0x443321
mov ecx, dword [esi + 0x10]
push ecx
push 0x78
call fcn.0040917b
push ebx
lea edx, [eax + 0x4c]
push edx
push edi
push eax
mov ecx, esi
mov dword [ebp + 8], eax
mov dword [eax], 0x44
call fcn.00423752
cmp byte [ebx], 0
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 0
jne 0x41ad5b
mov eax, dword [esi + 0xc]
cmp dword [eax], 0xe6
jne 0x41ad75
push eax
mov eax, dword [ebp + 8]
push edi
add eax, 0x60
push eax
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov dword [ebp - 0xc], eax
jne 0x41ada0
mov eax, dword [esi + 0xc]
cmp dword [eax], 0x83
jne 0x41adb5
mov edx, dword [ebp + 8]
push eax
push edi
add edx, 0x68
push edx
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov dword [ebp - 8], eax
jne 0x41ade0
mov eax, dword [esi + 0xc]
cmp dword [eax], 0x7b
je 0x437d07
mov ebx, dword [ebp + 8]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 8]
mov dword [ebx + 0x44], edx
mov edx, dword [ebp - 4]
mov dword [ebx + 0x58], ecx
mov dword [ebx + 0x5c], edx
jmp 0x440efc
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x30]
push ecx
mov ecx, esi
call fcn.00420346
test al, al
jne 0x41b1ee
push ebx
call fcn.00412c4f
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi + 0xc]
mov eax, dword [eax + 0x30]
xor ecx, ecx
mov dword [ebp - 8], ecx
mov dword [ebp + 8], ecx
mov ecx, dword [esi + 0x24]
lea edx, [ebp - 8]
mov dword [ebp - 0x10], ecx
push eax
mov ecx, esi
mov dword [ebp - 0x14], edx
call fcn.00420346
test al, al
je 0x43e638
call fcn.0040be7d
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
cmp ecx, 0x44
jne 0x4433a3
push edi
push 1
mov ecx, esi
mov dword [ebp + 8], eax
call fcn.0041f450
cmp dword [ebp + 8], 0
je 0x440f17
mov ecx, dword [ebp - 8]
push ecx
mov ecx, esi
call fcn.0040db09
mov edx, dword [esi + 0x10]
push edx
push 0x28
call fcn.0040917b
mov ebx, eax
mov dword [ebx], 0x62
mov eax, dword [ebp - 8]
mov dword [ebx + 0x24], eax
mov ecx, dword [edi + 4]
mov dword [ebx + 4], ecx
mov edx, dword [edi + 0xc]
mov dword [ebx + 0xc], edx
mov eax, dword [esi + 0xc]
push eax
push ebx
mov ecx, esi
call fcn.0040c271
push ebx
mov ecx, esi
call fcn.0040d176
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp + 8]
cmp eax, edx
movzx ecx, word [ebx + 0x20]
jne 0x41b0a9
jmp 0x41b0ba
push ebx
lea eax, [ebp + 0xb]
push eax
push 0
mov ecx, esi
call fcn.004229b5
cmp byte [ebp + 0xb], 0
mov edi, eax
mov dword [ebp - 0xc], edi
je 0x440f17
mov ecx, dword [esi + 0xc]
cmp dword [ecx], 0xe2
je 0x44ff7b
push edi
mov ecx, esi
call fcn.0040b279
test al, al
je 0x440f17
push edi
mov ecx, esi
call fcn.0040b6b6
mov edi, dword [esi + 0xc]
push edi
push 1
mov ecx, esi
mov dword [ebp - 0x18], edi
call fcn.0041f450
cmp dword [edi], 0x2d
jne 0x422b8f
mov eax, dword [esi + 0x10]
push eax
push 0x48
call fcn.0040917b
mov ecx, dword [ebp - 0xc]
mov edi, eax
mov eax, dword [ebp - 0x18]
mov dword [edi + 0x44], ecx
mov dword [edi], 0x3d
mov edx, dword [eax + 4]
mov dword [edi + 4], edx
mov eax, dword [eax + 0xc]
push edi
mov ecx, esi
mov dword [edi + 0xc], eax
call fcn.0040d176
mov ecx, esi
call fcn.0040be7d
mov ecx, dword [esi + 0xc]
push ecx
push edi
mov ecx, esi
call fcn.0040c271
mov edx, dword [esi + 0xc]
push edx
mov ecx, esi
call fcn.00420346
test al, al
jne 0x422b6e
push ebx
call fcn.0041ba45
mov eax, dword [esi + 0xc]
cmp dword [eax], 0xe2
je 0x41ab84
push edi
mov ecx, esi
call fcn.0040b279
test al, al
je 0x422b8f
push edi
mov ecx, esi
call fcn.0040b6b6
mov edx, dword [esi + 0xc]
push edx
push 1
mov ecx, esi
call fcn.0041f450
mov eax, dword [esi + 0x10]
push eax
push 0x24
call fcn.0040917b
mov edi, eax
mov dword [edi], 0x4e
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov edx, dword [eax + 0xc]
mov dword [edi + 0xc], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x30]
push ecx
push edi
mov ecx, esi
call fcn.0040c271
push edi
mov ecx, esi
call fcn.0040d176
mov edx, dword [ebp - 0xc]
mov dword [edx + 0x28], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edx, dword [ebp - 0x18]
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x44], edx
jmp 0x440efc
mov ecx, esi
call fcn.0040be7d
mov eax, dword [eax]
add eax, 0xffffffff
cmp eax, 0x8c
ja case.0x4237eb.1
movzx ecx, byte [eax + 0x41b99c]
jmp dword [ecx*4 + 0x41b974]
mov ecx, esi
call fcn.0040be7d
mov eax, dword [esi + 0x10]
push eax
push 0x28
call fcn.0040917b
mov dword [eax], 0x6f
mov ecx, dword [esi + 0xc]
push ecx
mov ecx, esi
mov dword [ebp + 8], eax
call fcn.00420346
test al, al
jne 0x42f96e
push ebx
push 0
call fcn.0040c038
mov edx, dword [ebp + 8]
mov dword [edx + 0x24], eax
cmp byte [ebx], 0
jne 0x41b357
jmp 0x440f07
mov edx, dword [edi + 0x30]
cmp dword [edx], 0x3f
je case.0x41ba7c.45
mov eax, dword [esi + 0x24]
mov dword [ebp - 4], eax
mov eax, dword [eax]
cmp eax, 0x39
mov dword [ebp + 8], eax
jne 0x433546
cmp eax, 0x3b
sete al
push edi
mov ecx, esi
push eax
call fcn.0041f450
mov ecx, dword [esi + 0x10]
push ecx
push 0x48
call fcn.0040917b
cmp dword [ebp + 8], 0x39
mov dword [ebp - 0xc], eax
mov dword [eax], 0x3c
jne 0x433554
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x44], ecx
mov ecx, dword [edi + 4]
mov dword [eax + 4], ecx
mov edx, dword [edi + 0xc]
mov ecx, esi
mov dword [eax + 0xc], edx
call fcn.0040be7d
mov eax, dword [esi + 0xc]
mov edi, dword [ebp - 0xc]
push eax
push edi
mov ecx, esi
call fcn.0040c271
push edi
mov ecx, esi
call fcn.0040d176
mov ecx, dword [esi + 0xc]
push ecx
mov ecx, esi
call fcn.00420346
test al, al
je 0x41ba55
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov dword [ebp + 8], 0x85
jmp 0x420079
cmp dword [ebp + 8], 0x4b
je 0x433327
jmp 0x41acef
mov ecx, esi
call fcn.0040be7d
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
cmp ecx, 0x47
mov dword [ebp + 8], ecx
jne 0x41ac86
mov eax, dword [esi + 0xc]
push eax
mov ecx, esi
call fcn.00420346
test al, al
je 0x43325c
mov ecx, dword [esi + 0xc]
push ebx
lea edx, [ebp + 0xb]
mov dword [ebp - 0x18], ecx
push edx
mov ecx, esi
mov byte [ebp + 0xb], 0
call fcn.0043326b
mov ebx, eax
test ebx, ebx
jne 0x433371
mov eax, 0x66
push ebx
push eax
push edi
mov ecx, esi
call fcn.00412bd9
test ebx, ebx
je 0x440f17
mov ecx, dword [ebp - 0x18]
push ecx
push edi
add eax, 0x28
push eax
call fcn.0040b665
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi + 0x24]
mov dword [eax + 0x44], ebx
mov al, byte [ebp + 0xb]
mov edx, dword [esi + 0x24]
mov cl, al
neg cl
sbb ecx, ecx
add ecx, 0x4a
neg al
mov dword [edx], ecx
sbb eax, eax
add eax, 0x65
jmp 0x433348
mov ecx, dword [esi + 0x10]
push ecx
push 0x50
call fcn.0040917b
mov edx, dword [esi + 0xc]
mov ecx, dword [edx + 0x30]
push ecx
mov dword [ebp - 4], eax
push edi
add eax, 0x48
push eax
call fcn.0040b665
jmp 0x4333dc
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x30]
mov ecx, dword [eax]
cmp ecx, 0x8d
je 0x433391
cmp ecx, 0xc9
je 0x436cd5
mov eax, dword [esi + 0x10]
push eax
push 0x48
call fcn.0040917b
mov dword [ebp - 4], eax
mov edx, dword [edi + 4]
mov eax, dword [ebp - 4]
mov dword [eax + 4], edx
mov ecx, dword [edi + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, esi
call fcn.0040be7d
push ebx
lea edx, [ebp + 0xb]
push edx
mov ecx, esi
call fcn.0043326b
test eax, eax
mov edi, dword [ebp - 4]
jne 0x41ac34
jmp 0x41ac60
mov edx, dword [esi + 0xc]
mov edi, dword [ebp + 8]
push edx
push edi
mov ecx, esi
call fcn.0040c271
push edi
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp eax, 0x3b
sete dl
push edi
mov ecx, esi
push edx
call fcn.0041f450
cmp dword [ebp - 0xc], 0x39
mov eax, dword [ebp - 4]
jne 0x41ac1b
jmp 0x41ac1e
cmp eax, 0x3b
je 0x432b37
jmp 0x41aba6
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x50]
jmp 0x432b67
push eax
mov ecx, esi
call fcn.004ad7b8
cmp eax, 0xa5
jne 0x4333ce
jmp 0x433391
mov ecx, dword [ebp + 8]
push eax
push edi
add ecx, 0x70
push ecx
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov dword [ebp - 4], eax
je 0x42019b
jmp 0x41adf2
mov dword [ebp + 8], 0x86
jmp 0x420079
push ebx
mov ecx, esi
call fcn.0043813b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.0043a5d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.0040be7d
mov edx, dword [esi + 0x10]
push edx
push 0x28
call fcn.0040917b
mov dword [ebp + 8], eax
mov dword [eax], 0x93
mov eax, dword [esi + 0xc]
push eax
mov ecx, esi
call fcn.00420346
test al, al
jne 0x440f0f
push ebx
push 0
call fcn.0040c038
jmp 0x41b505
mov edx, dword [edi + 4]
mov dword [ebx + 4], edx
mov eax, dword [edi + 0xc]
mov dword [ebx + 0xc], eax
mov ecx, dword [esi + 0xc]
push ecx
jmp 0x41bb02
push ebx
mov ecx, esi
call fcn.004480a6
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
mov ecx, esi
call fcn.0043beb9
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
mov ecx, esi
call fcn.0043c0b5
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
push 0x97
mov ecx, esi
call fcn.0043c5e3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.0040be7d
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
cmp ecx, 0x44
je 0x43e652
cmp ecx, 0x45
jne 0x41af2a
mov eax, dword [esi + 0xc]
push ebx
push 5
mov ecx, esi
mov dword [ebp - 0x18], eax
call fcn.0040c038
cmp byte [ebx], 0
mov dword [ebp + 8], eax
jne 0x41b099
mov ecx, dword [esi + 0x24]
mov edx, dword [ebp + 8]
mov dword [ecx + 0x48], edx
mov eax, dword [esi + 0xc]
xor ecx, ecx
cmp dword [eax], 0xd4
setne cl
sub ecx, 1
and ecx, eax
push ecx
push eax
mov eax, dword [ebp - 0x18]
push eax
push edx
lea ecx, [ebp - 0x14]
push ecx
mov ecx, esi
call fcn.00439f9f
mov edx, dword [esi + 0x24]
push edi
push 1
mov ecx, esi
mov dword [ebp + 8], edx
call fcn.0041f450
mov eax, dword [esi + 0xc]
cmp dword [eax], 0xd4
jne 0x4203a8
jmp 0x43e638
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx]
cmp eax, 0x7f
je case.0x41ba7c.21
cmp eax, 0x39
je case.0x41ba7c.21
cmp eax, 0x5e
je case.0x41ba7c.21
cmp eax, 0x69
je case.0x41ba7c.21
push ecx
mov ecx, esi
call fcn.004ade35
test al, al
je 0x41bab5
jmp case.0x41ba7c.21
push ebx
push 0x46
mov ecx, esi
call fcn.0043c5e3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov dword [ebp + 8], 0x8d
jmp 0x420079
mov eax, dword [ebp - 0xc]
mov dword [ebx + 0x54], eax
jmp 0x420092
mov ebx, dword [ebp + 8]
jmp 0x420092
mov ebx, dword [ebp + 8]
jmp 0x43b246
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp byte [esi + 0x24c], 0
je 0x41b40c
mov eax, dword [esi + 0x250]
cmp eax, 0x8a
jne 0x41b3ec
mov ecx, dword [esi + 0x250]
mov dword [ebp + 8], ecx
jmp 0x420067
cmp byte [esi + 0x24c], 0
je 0x41b3e0
mov eax, dword [esi + 0x250]
cmp eax, 0x88
je 0x41b452
mov ecx, dword [esi + 0xc]
mov edx, dword [ecx + 0x30]
test eax, eax
sete al
push ebx
push eax
push edx
push edi
push 0x7573
jmp 0x41b44b
mov dword [ebp + 8], 0x8b
jmp 0x420079
mov eax, dword [esi + 0x10]
push eax
push 0x68
call fcn.0040917b
mov dword [eax], 0x45
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp + 8], eax
push edi
add eax, 0x58
push eax
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
mov eax, dword [ebp + 8]
push ebx
lea edx, [eax + 0x4c]
push edx
push edi
push eax
mov ecx, esi
call fcn.00423752
cmp byte [ebx], 0
mov dword [ebp - 0x18], eax
jne 0x41ad0e
mov eax, dword [esi + 0xc]
cmp dword [eax], 0x42
jne 0x41ad20
push eax
mov eax, dword [ebp + 8]
push edi
add eax, 0x60
push eax
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov dword [ebp - 0xc], eax
jne 0x41ad4b
jmp 0x42378e
cmp ecx, 0x45
je 0x42039b
jmp 0x41ae02
push ebx
mov ecx, esi
call fcn.00446f9b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
mov ecx, esi
call fcn.004b022c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.0040be7d
mov edx, dword [esi + 0x10]
push edx
push 0x28
call fcn.0040917b
push ebx
push 0
mov ecx, esi
mov dword [ebp + 8], eax
mov dword [eax], 0x92
call fcn.0040c038
jmp 0x41b4e6
mov ecx, dword [esi + 0x10]
push ecx
push 0x50
call fcn.0040917b
mov dword [eax], 0x3e
mov edx, dword [edi + 4]
mov dword [eax + 4], edx
mov ecx, dword [edi + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, esi
mov dword [ebp + 8], eax
call fcn.0040be7d
mov eax, dword [esi + 0xc]
cmp dword [eax], 0xc
jne 0x448f1c
mov edx, dword [ebp + 8]
push eax
push edi
add edx, 0x48
push edx
call fcn.0040b665
mov ecx, esi
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov edi, eax
jne 0x41aa93
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x44], edi
mov eax, dword [esi + 0xc]
push eax
push ebx
mov ecx, esi
mov byte [esi + 0x249], 1
call fcn.0040c271
push ebx
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [edi]
add eax, 0xfffffff4
cmp eax, 0xd6
ja case.0x448f72.13
movzx eax, byte [eax + 0x41b708]
jmp dword [eax*4 + 0x41b700]
mov ecx, esi
mov dword [ebp - 8], eax
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov edi, eax
jne 0x41aa05
mov eax, dword [esi + 0x10]
push eax
push 0x24
call fcn.0040917b
mov ecx, dword [ebp - 4]
lea edx, [eax + 0x1c]
mov dword [eax + 0x18], edi
mov dword [eax], 3
mov dword [eax + 0x14], ecx
mov dword [ebp - 0xc], edx
mov edi, eax
jmp 0x4493a0
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x30]
cmp dword [eax], 0x2d
je 0x44941c
mov edx, dword [esi + 0x10]
push edx
push 0x48
call fcn.0040917b
mov dword [eax], 0x3f
mov ecx, dword [edi + 4]
mov dword [eax + 4], ecx
mov edx, dword [edi + 0xc]
mov dword [ebp - 0x18], eax
mov dword [eax + 0xc], edx
add eax, 0x44
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov ecx, esi
call fcn.0040be7d
mov dword [ebp + 8], eax
mov eax, dword [eax]
xor ecx, ecx
cmp eax, 0x46
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], ecx
je 0x4498ef
add eax, 0xffffff1d
cmp eax, 5
jbe 0x4498ef
push ebx
push ecx
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov edi, eax
mov dword [ebp - 4], edi
jne 0x41a9f0
mov eax, dword [esi + 0xc]
cmp dword [eax], 0x83
je 0x4491cf
mov eax, dword [esi + 0x10]
push eax
push 0x18
call fcn.0040917b
mov dword [eax + 0x14], edi
mov dword [eax], 2
mov edi, eax
mov edx, dword [ebp - 8]
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 8]
push edx
mov edx, dword [ebp - 0xc]
push eax
push ecx
push edx
lea eax, [edi + 4]
push eax
mov ecx, esi
call fcn.004492e0
mov eax, dword [esi + 0xc]
xor ecx, ecx
cmp dword [eax], 0xd4
lea edx, [ebp - 0x10]
setne cl
sub ecx, 1
and ecx, eax
push ecx
mov ecx, dword [ebp + 8]
push eax
push ecx
push edi
push edx
mov ecx, esi
call fcn.00439f9f
mov eax, dword [esi + 0xc]
cmp dword [eax], 0xd4
je 0x449339
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx]
push edx
mov ecx, esi
call fcn.0040db09
mov eax, dword [esi + 0xc]
mov edi, dword [ebp - 0x18]
push eax
push edi
mov ecx, esi
call fcn.0040c271
push edi
mov ecx, esi
call fcn.0040d176
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.0040be7d
mov ecx, esi
call fcn.0040be7d
mov ecx, dword [esi + 0x10]
push ecx
push 0x44
call fcn.0040917b
mov ebx, eax
mov dword [ebx], 0x40
jmp 0x43b246
mov edx, dword [esi + 0x24]
mov byte [esi + 0x249], 0
mov eax, dword [edx]
cmp eax, 0x3f
jne 0x449462
push edi
push 1
mov ecx, esi
call fcn.0041f450
jmp 0x41a9df
cmp eax, 0x40
jne 0x41a9df
jmp 0x41a9c9
mov ecx, dword [esi + 0x10]
push ecx
push 0x2c
call fcn.0040917b
mov edx, dword [ebp + 8]
mov edi, eax
mov dword [edi], 1
cmp dword [edx], 0x46
je 0x41aa15
jmp 0x41aa29
mov dword [ebp - 8], ecx
mov ecx, esi
call fcn.0040be7d
push ebx
push 0
mov ecx, esi
call fcn.0040c038
cmp byte [ebx], 0
mov dword [ebp - 0xc], eax
jne 0x41aa44
mov eax, dword [ebp - 4]
call fcn.0040fcef
mov edx, dword [ebp - 0xc]
mov dword [edi + 0x14], eax
lea eax, [edi + 0x24]
mov dword [edi + 0x18], edx
mov dword [ebp - 0xc], eax
jmp 0x4493a0
mov edi, edi
mov ecx, esi
call fcn.0040be7d
push ebx
mov ecx, esi
call fcn.0041ba45
mov edx, dword [esi + 0xc]
cmp dword [edx], 0xe2
jne 0x422ad6
jmp 0x44ff7d