Function at 0x4b8480
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x68]
cmp eax, dword [ecx + 8]
jbe 0x4ba7e1
sub esp, 0xe8
mov ecx, dword [esp + 0x100]
test ecx, ecx
jle 0x4ba6ed
mov edx, dword [esp + 0xf8]
test edx, edx
je 0x4b84c6
test edx, 0x60
je 0x4ba670
mov edi, dword [esp + 0xec]
mov dword [edi + 0xc], 0
mov ebx, dword [0xa8f2d0]
test ebx, ebx
jne 0x4ba659
mov dword [edi + 0x10], 0
mov dword [edi + 0x1c], edx
mov ebx, dword [0xa8f2d0]
test ebx, ebx
jne 0x4ba623
mov ebx, dword [esp + 0xf0]
mov dword [edi + 0x14], ebx
mov ebp, dword [esp + 0xf4]
mov dword [edi + 0x18], ebp
mov esi, edx
and edx, 0x1f
mov dword [esp + 0x80], edx
cmp edx, 0x10
jbe 0x4ba1e4
cmp edx, 0x15
ja 0x4b99ed
cmp edx, 0x13
ja 0x4b8f8e
cmp edx, 0x11
jne 0x4b8f49
mov eax, dword [esp + 0xfc]
cmp eax, 0x71
jg 0x4b8f32
cmp eax, 0x58
jne 0x4b8f24
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a8370
mov eax, dword [esp + 0xc]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x84], ecx
mov edx, dword [eax + 0x28]
mov dword [esp], ecx
call edx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x50]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
cmp eax, 8
jne 0x4b8867
mov eax, dword [esp + 0x80]
cmp eax, 0x17
je 0x4b8831
mov eax, dword [esp + 0xf8]
test eax, 0x100
jne 0x4b87b1
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004a5e00
mov eax, dword [esp + 0xc]
lea ecx, [0x731080]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00438a70
mov eax, dword [esp + 0x14]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x9c], edx
xor ebx, ebx
jmp 0x4b862e
mov ebp, dword [esp + 0x9c]
mov byte [ebp + ecx], al
lea ebx, [ecx + 1]
mov eax, dword [esp + 0x70]
mov ecx, edx
mov edx, ebp
cmp ebx, ecx
jge 0x4b8740
mov dword [esp + 0x68], ebx
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.004a56f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x80], eax
cmp eax, 9
ja 0x4b86fe
cmp eax, 7
jne 0x4b8696
mov eax, dword [ecx]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jb 0x4b8618
jmp 0x4ba786
cmp eax, 8
jne 0x4b86aa
movzx eax, byte [ecx]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x4b868f
cmp eax, 9
jne 0x4b86be
movzx eax, word [ecx]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x4b868f
lea eax, [0x74d440]
mov dword [esp], eax
call fcn.00409d00
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0xa8f2d0]
test eax, eax
jne 0x4b86ee
lea eax, [0x798bfb]
mov dword [edi], eax
jmp 0x4ba6f9
lea eax, [0x798bfb]
call fcn.0044c9e0
jmp 0x4ba6f9
cmp eax, 0xa
jne 0x4b8714
mov eax, dword [ecx]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x4b868f
cmp eax, 0xb
jne 0x4b872a
mov eax, dword [ecx]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x4b868f
cmp eax, 0xc
jne 0x4b86be
mov eax, dword [ecx]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x4b868f
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x9c], edx
mov ebx, dword [esp + 0x3c]
mov ebx, dword [ebx + 0x80]
mov ebp, dword [esp + 0x84]
mov dword [esp], ebp
call ebx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov dword [esp], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0xfc]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
call fcn.004b6690
add esp, 0xe8
ret
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004a5e00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xf8]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], eax
call fcn.004a7d30
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004a3070
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
jmp 0x4b8740
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.004a3070
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
jmp 0x4b8740
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
jne 0x4b8a8b
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x4b8a39
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x5b
xor ecx, ecx
jmp 0x4b890b
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.004a56f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x100]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004b8480
mov eax, dword [esp + 0x58]
lea ecx, [eax + 1]
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
call fcn.004a5e00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jge 0x4b89c4
test ecx, ecx
jle 0x4b889b
mov eax, dword [esp + 0xec]
mov edx, dword [eax + 4]
lea ebx, [edx + 1]
mov ebp, dword [eax + 8]
mov esi, dword [eax]
cmp ebx, ebp
jg 0x4b8971
lea ebx, [edx + 1]
mov dword [eax + 4], ebx
mov byte [esi + edx], 0x20
jmp 0x4b889b
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b89bd
mov dword [edi], eax
mov edx, ecx
mov esi, eax
mov eax, edi
mov ecx, dword [esp + 0x58]
jmp 0x4b8962
call fcn.0044c9e0
jmp 0x4b89b1
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
jg 0x4b89ec
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x5d
add esp, 0xe8
ret
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b8a32
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4b89da
call fcn.0044c9e0
jmp 0x4b8a2c
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b8a84
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x4b888d
call fcn.0044c9e0
jmp 0x4b8a79
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.004a8370
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x4b8ed8
test ebp, ebp
jl 0x4ba77f
cmp ebp, esi
ja 0x4ba77f
mov dword [esp + 0x74], esi
mov dword [esp + 0xb0], edi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044d1e0
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b8ebc
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
mov ebx, dword [esp + 0x80]
cmp ebx, 0x17
jne 0x4b8eb0
add ebx, 0xffffffeb
cmp ebx, 1
ja 0x4b8e8e
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x4b8dbc
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x50]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
jg 0x4b8d65
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
xor eax, eax
jmp 0x4b8c11
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.004a56f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x100]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004b8480
mov eax, dword [esp + 0x5c]
inc eax
mov ebx, dword [esp + 0xf8]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.004a5e00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
cmp ecx, eax
jge 0x4b8cf2
test ecx, ecx
jle 0x4b8ceb
mov edi, dword [esp + 0xec]
mov edx, dword [edi + 4]
lea ebx, [edx + 2]
mov ebp, dword [edi + 8]
mov esi, dword [edi]
cmp ebx, ebp
ja 0x4b8ca5
test ebx, ebx
jl 0x4ba771
cmp ebx, ebp
ja 0x4ba771
mov eax, ecx
movzx ecx, word [0x78f6cb]
mov word [esi + edx], cx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4b8c95
mov dword [edi], esi
jmp 0x4b8b9c
mov ecx, eax
mov eax, esi
call fcn.0044c9e0
mov eax, ecx
jmp 0x4b8b9c
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x4b8c61
mov eax, ecx
jmp 0x4b8b9c
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
jg 0x4b8d18
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x4b89e5
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b8d5e
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4b8d08
call fcn.0044c9e0
jmp 0x4b8d58
lea ebx, [0x731080]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b8db5
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x4b8b8e
call fcn.0044c9e0
jmp 0x4b8da5
test ebx, 0x80
je 0x4b8e80
mov ebp, dword [esp + 0xf4]
mov esi, dword [ebp]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
xchg esi, eax
test al, al
xchg esi, eax
je 0x4b8b7a
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x50]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x4b8e42
test ebx, ebx
jl 0x4ba778
cmp ebx, ecx
ja 0x4ba778
mov ebp, dword [0x790431]
movzx esi, byte [0x790435]
mov dword [edx + eax], ebp
xchg esi, ebx
mov byte [edx + eax + 4], bl
xchg esi, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4b8e39
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.0044c9e0
jmp 0x4b8e32
mov dword [esp + 0x7c], ebx
lea ebp, [0x731080]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x4b8df8
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x4b8dd2
mov ebp, dword [esp + 0xf4]
mov ebx, dword [ebp]
test ebx, ebx
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
mov ebx, dword [esp + 0xf8]
jmp 0x4b8dde
mov ebx, dword [esp + 0xf8]
jmp 0x4b8b7a
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044c9e0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x4b8b4b
mov dword [esp + 0x88], ecx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x4b8af1
cmp eax, 0x71
je 0x4b8557
jmp 0x4b8867
cmp eax, 0x73
je 0x4b8557
cmp eax, 0x78
je 0x4b8557
jmp 0x4b8867
lea eax, [edx - 0x12]
cmp eax, 1
ja 0x4b8f75
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.004b6e90
jmp 0x4b89e5
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.004b5580
jmp 0x4b89e5
cmp edx, 0x14
je 0x4b9721
movzx edx, byte [edi + 0x2c]
test dl, dl
jne 0x4b9467
mov edx, dword [edi + 4]
mov eax, ecx
lea ecx, [edx + 4]
mov esi, dword [edi]
mov ebp, dword [edi + 8]
cmp ecx, ebp
ja 0x4b9417
test ecx, ecx
jl 0x4ba7be
cmp ecx, ebp
ja 0x4ba7be
mov ebx, dword [0x790154]
mov dword [esi + edx], ebx
mov dword [edi + 4], ecx
mov dword [edi + 8], ebp
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4b9407
mov dword [edi], esi
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.004a6170
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test eax, eax
jle 0x4b91e7
mov dword [esp + 0x54], eax
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x100]
mov ebp, dword [esp + 0xfc]
xor esi, esi
jmp 0x4b906b
mov edx, dword [esp + 0xac]
add edx, 0xc
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
mov ebx, ebp
mov ebp, esi
mov ecx, edx
mov esi, eax
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0xec]
mov dword [esp + 0xac], ecx
mov dword [esp + 0x64], esi
mov edi, ebx
mov ebx, dword [ecx + 8]
mov dword [esp + 0x80], ebx
mov ebp, dword [ecx + 4]
mov dword [esp + 0xa8], ebp
mov ecx, dword [ecx]
mov dword [esp + 0xa4], ecx
test esi, esi
jle 0x4b90f3
movzx esi, byte [edx + 0x2c]
xchg esi, eax
test al, al
xchg esi, eax
je 0x4b9383
mov esi, dword [edx + 4]
lea ebx, [esi + 2]
mov ebp, dword [edx + 8]
mov ecx, dword [edx]
cmp ebx, ebp
ja 0x4b9336
test ebx, ebx
jl 0x4ba7b7
cmp ebx, ebp
ja 0x4ba7b7
mov dword [esp + 0x7c], ebp
movzx ebp, word [0x78f6cb]
mov word [ecx + esi], bp
mov dword [edx + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [edx + 8], ebx
mov ebx, dword [0xa8f2d0]
test ebx, ebx
jne 0x4b9320
mov dword [edx], ecx
mov dword [esp], edx
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x80]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xfc]
mov dword [esp + 0x10], ebp
lea esi, [edi + 1]
mov dword [esp + 0x7c], esi
mov dword [esp + 0x14], esi
call fcn.004b8480
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x4b92ce
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x3a
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0xc], ebp
mov ebp, dword [esp + 0xa8]
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x14], ebp
call fcn.004a5fa0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x14], ecx
call fcn.004b8480
mov eax, dword [esp + 0x64]
inc eax
mov ecx, dword [esp + 0x54]
cmp eax, ecx
jl 0x4b9039
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
je 0x4b9261
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
mov ebx, dword [eax]
lea ebp, [ecx + 1]
cmp ebp, edx
jg 0x4b9214
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4b89e5
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b925a
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b9205
call fcn.0044c9e0
jmp 0x4b9254
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x4b927f
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x5d
jmp 0x4b89e5
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b92c7
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x4b9270
call fcn.0044c9e0
jmp 0x4b92bf
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b9319
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x4b914c
call fcn.0044c9e0
jmp 0x4b930e
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.0044c9e0
mov eax, ebp
mov edi, ebx
jmp 0x4b90f3
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], esi
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x100]
jmp 0x4b90ba
mov esi, dword [edx + 4]
mov eax, dword [edx]
mov edi, dword [edx + 8]
lea ebx, [esi + 1]
cmp ebx, edi
jg 0x4b93ac
lea ebx, [esi + 1]
mov dword [edx + 4], ebx
mov byte [eax + esi], 0x20
mov eax, dword [esp + 0x54]
mov edi, dword [esp + 0x100]
jmp 0x4b90f3
lea ecx, [0x731080]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b9400
mov dword [edi], eax
mov edx, edi
mov ebp, dword [esp + 0xa8]
mov esi, ecx
mov ecx, dword [esp + 0xa4]
jmp 0x4b9392
call fcn.0044c9e0
jmp 0x4b93ec
mov ecx, eax
mov eax, esi
call fcn.0044c9e0
mov eax, ecx
jmp 0x4b8fe7
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], edx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ecx
call fcn.00438b40
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0xf0]
mov edi, dword [esp + 0xec]
jmp 0x4b8fb8
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a8370
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [ecx + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x4b96d5
test ebp, ebp
jl 0x4ba7cc
cmp ebp, esi
ja 0x4ba7cc
mov dword [esp + 0x74], esi
mov dword [esp + 0xb0], edi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0044d1e0
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b96b9
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
mov ebx, dword [esp + 0x80]
lea ebp, [ebx - 0x15]
cmp ebp, 1
ja 0x4b9679
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x4b95a7
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x4c]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
jg 0x4b9553
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
jmp 0x4b8fe7
lea ebx, [0x731080]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b95a0
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x4b9544
call fcn.0044c9e0
jmp 0x4b9593
test ebx, 0x80
je 0x4b966b
mov ebp, dword [esp + 0xf4]
mov esi, dword [ebp]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
xchg esi, eax
test al, al
xchg esi, eax
je 0x4b9534
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x4c]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x4b962d
test ebx, ebx
jl 0x4ba7c5
cmp ebx, ecx
ja 0x4ba7c5
mov ebp, dword [0x790431]
movzx esi, byte [0x790435]
mov dword [edx + eax], ebp
xchg esi, ebx
mov byte [edx + eax + 4], bl
xchg esi, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4b9624
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.0044c9e0
jmp 0x4b961d
mov dword [esp + 0x7c], ebx
lea ebp, [0x731080]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x4b95e3
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x4b95bd
lea eax, [0x74d440]
mov dword [esp], eax
call fcn.00409d00
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x13
mov eax, dword [0xa8f2d0]
test eax, eax
jne 0x4b96a9
lea eax, [0x799701]
mov dword [edi], eax
jmp 0x4ba717
lea eax, [0x799701]
call fcn.0044c9e0
jmp 0x4ba717
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044c9e0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x4b9512
mov dword [esp + 0x90], eax
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x4b94b8
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a4f30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x4b99b6
mov edi, dword [esp + 0xec]
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4b97f5
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4b97b3
test edx, edx
jl 0x4ba78d
cmp edx, ebx
ja 0x4ba78d
movzx esi, byte [0x790494]
mov eax, ebx
mov ebx, dword [0x790490]
mov dword [ebp + ecx], ebx
xchg esi, eax
mov byte [ebp + ecx + 4], al
xchg esi, eax
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4b97a7
mov dword [edi], ebp
jmp 0x4b89e5
mov eax, ebp
call fcn.0044c9e0
jmp 0x4b89e5
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], edx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00438b40
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x4b9767
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.004a8370
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x4b996a
test ebp, ebp
jl 0x4ba79b
cmp ebp, esi
ja 0x4ba79b
mov dword [esp + 0x74], esi
mov dword [esp + 0xb0], edi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044d1e0
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0xa8f2d0]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x48]
lea ebx, [ebp + ebx + 5]
test edx, edx
jne 0x4b994e
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
cmp ebx, ecx
ja 0x4b9910
test ebx, ebx
jl 0x4ba794
cmp ebx, ecx
ja 0x4ba794
mov ebp, dword [0x790431]
movzx esi, byte [0x790435]
mov dword [edx + eax], ebp
xchg esi, ebx
mov byte [edx + eax + 4], bl
xchg esi, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4b9904
mov dword [edi], edx
jmp 0x4b89e5
mov eax, edx
call fcn.0044c9e0
jmp 0x4b89e5
mov dword [esp + 0x7c], ebx
lea ebp, [0x731080]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x4b98c5
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044c9e0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x4b98c1
mov dword [esp + 0x8c], ecx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x4b985b
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x100]
inc eax
mov dword [esp + 0x14], eax
call fcn.004b8480
jmp 0x4b89e5
cmp edx, 0x17
ja 0x4b9b96
cmp edx, 0x16
jne 0x4b853e
test ecx, ecx
jne 0x4b8f51
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a6d50
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4b9a40
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x4b8f51
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.004a4f30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, eax
and eax, 0x1f
cmp eax, 0x15
ja 0x4b9b82
cmp eax, 0x11
jne 0x4b9b58
mov dword [esp + 0x80], ebx
mov eax, dword [esp + 0xec]
mov ebp, dword [eax + 8]
mov esi, dword [eax + 4]
mov edi, dword [eax]
lea ebx, [esi + 1]
cmp ebx, ebp
jg 0x4b9ae8
lea ebx, [esi + 1]
mov dword [eax + 4], ebx
mov byte [edi + esi], 0x26
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x80]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x100]
inc eax
mov dword [esp + 0x14], eax
call fcn.004b8480
add esp, 0xe8
ret
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xa4], edx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b9b51
mov dword [edi], eax
mov edx, dword [esp + 0xa4]
mov esi, ecx
mov ecx, dword [esp + 0xa8]
mov ebx, eax
mov eax, edi
mov edi, ebx
jmp 0x4b9aa5
call fcn.0044c9e0
jmp 0x4b9b36
cmp eax, 0x15
je 0x4b9a88
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x4b8f51
cmp eax, 0x17
je 0x4b9a88
cmp eax, 0x19
je 0x4b9a88
jmp 0x4b9b61
cmp edx, 0x18
je 0x4ba1a5
cmp edx, 0x19
jne 0x4ba197
movzx eax, byte [edi + 0x2c]
test al, al
jne 0x4ba075
mov eax, dword [edi + 4]
mov edx, dword [edi + 8]
mov ecx, dword [edi]
lea esi, [eax + 1]
cmp esi, edx
jg 0x4ba015
lea edx, [eax + 1]
mov dword [edi + 4], edx
mov byte [ecx + eax], 0x7b
lea eax, [esp + 8]
mov dword [esp + 0xa0], eax
xor ecx, ecx
jmp 0x4b9c65
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0xc], ebx
call fcn.004b53f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x100]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004b8480
mov eax, dword [esp + 0x60]
lea ecx, [eax + 1]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov dword [esp + 0x60], ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.004a6880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
cmp ecx, eax
jge 0x4b9fa2
test ecx, ecx
jle 0x4b9f94
mov edi, dword [esp + 0xec]
movzx edx, byte [edi + 0x2c]
test dl, dl
je 0x4b9f23
mov edx, dword [edi + 4]
lea ebx, [edx + 2]
mov ebp, dword [edi + 8]
mov esi, dword [edi]
cmp ebx, ebp
ja 0x4b9edd
test ebx, ebx
jl 0x4ba7a9
cmp ebx, ebp
ja 0x4ba7a9
mov eax, ecx
movzx ecx, word [0x78f6cb]
mov word [esi + edx], cx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4b9ecd
mov dword [edi], esi
movzx ecx, byte [edi + 0x2b]
test cl, cl
je 0x4b9ebc
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.004a8370
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x2c]
mov edx, dword [esp + 0x60]
mov dword [esp + 4], edx
mov dword [esp], ecx
call eax
lea edi, [esp + 0xb4]
mov esi, dword [esp + 0xa0]
call fcn.0044cf6e
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb4]
test eax, eax
je 0x4b9eb0
mov dword [esp + 0x40], eax
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx]
mov edi, dword [edx + 8]
cmp ebp, edi
ja 0x4b9e64
test ebp, ebp
jl 0x4ba7a2
cmp ebp, edi
ja 0x4ba7a2
mov dword [esp + 0xb0], esi
mov dword [esp + 0x74], edi
lea edx, [esi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044d1e0
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0xa8f2d0]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x40]
lea ebx, [ebp + ebx + 1]
test edx, edx
jne 0x4b9e4b
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
cmp ebx, ecx
jg 0x4b9dfe
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x3a
jmp 0x4b9be3
lea ebp, [0x731080]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b9e44
mov dword [edi], eax
mov edx, eax
mov eax, ecx
jmp 0x4b9def
call fcn.0044c9e0
jmp 0x4b9e3e
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044c9e0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x4b9deb
mov dword [esp + 0x94], ecx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x4b9d89
mov edi, dword [esp + 0xec]
jmp 0x4b9be3
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4b9cfd
jmp 0x4b9be3
mov ecx, eax
mov eax, esi
call fcn.0044c9e0
mov eax, ecx
jmp 0x4b9cf1
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00438b40
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x4b9cbe
mov eax, dword [edi + 4]
lea edx, [eax + 1]
mov ebx, dword [edi]
mov ebp, dword [edi + 8]
cmp edx, ebp
jg 0x4b9f43
lea edx, [eax + 1]
mov dword [edi + 4], edx
mov byte [ebx + eax], 0x20
mov eax, ecx
jmp 0x4b9cf1
lea ecx, [0x731080]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4b9f8d
mov dword [edi], eax
mov ebx, eax
mov eax, ecx
mov ecx, dword [esp + 0x60]
jmp 0x4b9f32
call fcn.0044c9e0
jmp 0x4b9f83
mov eax, ecx
mov edi, dword [esp + 0xec]
jmp 0x4b9cf1
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
jg 0x4b9fc8
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x4b89e5
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4ba00e
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4b9fb8
call fcn.0044c9e0
jmp 0x4ba008
lea ebx, [0x731080]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
call fcn.00438b40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x4ba06e
mov dword [edi], eax
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x4b9bc7
call fcn.0044c9e0
jmp 0x4ba055
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a8370
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
lea ebp, [eax + ebx]
mov dword [esp + 0x7c], ebp
mov esi, dword [edx]
mov edi, dword [edx + 8]
cmp ebp, edi
ja 0x4ba143
test ebp, ebp
jl 0x4ba7b0
cmp ebp, edi
ja 0x4ba7b0
mov dword [esp + 0xb0], esi
mov dword [esp + 0x78], edi
lea edx, [esi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044d1e0
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x78]
mov dword [edi + 8], eax
mov eax, dword [0xa8f2d0]
test eax, eax
jne 0x4ba135
mov eax, dword [esp + 0xb0]
mov dword [edi], eax
mov ecx, dword [esp + 0x100]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
jmp 0x4b9bb4
mov eax, dword [esp + 0xb0]
call fcn.0044c9e0
jmp 0x4ba114
mov dword [esp + 0x78], ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x98], ecx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00438b40
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x7c]
jmp 0x4ba0be
cmp edx, 0x1a
je 0x4b8f51
jmp 0x4b8f75
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a8160
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xec]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xc], eax
call fcn.004b6520
jmp 0x4b89e5
cmp edx, 0xc
ja 0x4ba546
cmp edx, 1
ja 0x4ba3c5
test esi, 0x1f
jne 0x4ba38d
test ecx, ecx
jne 0x4ba2d0
mov eax, dword [edi + 4]
lea ecx, [eax + 0x17]
mov dword [esp + 0x7c], ecx
mov edx, dword [edi]
mov ebx, dword [edi + 8]
cmp ecx, ebx
ja 0x4ba292
test ecx, ecx
jl 0x4ba7da
cmp ecx, ebx
ja 0x4ba7da
mov dword [esp + 0x78], ebx
mov dword [esp + 0xb0], edx
add eax, edx
mov dword [esp], eax
lea eax, [0x79b48a]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x17
call fcn.0044d1e0
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x78]
mov dword [edi + 8], eax
mov eax, dword [0xa8f2d0]
test eax, eax
jne 0x4ba281
mov eax, dword [esp + 0xb0]
mov dword [edi], eax
jmp 0x4b89e5
mov eax, dword [esp + 0xb0]
call fcn.0044c9e0
jmp 0x4b89e5
mov dword [esp + 0x78], eax
lea ebp, [0x731080]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00438b40
mov ebx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x4ba21d
mov ecx, dword [esp + 0xfc]
cmp ecx, 0x76
jne 0x4ba37c
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi]
mov ebp, dword [edi + 8]
cmp edx, ebp
ja 0x4ba33a
test edx, edx
jl 0x4ba7d3
cmp edx, ebp
ja 0x4ba7d3
mov esi, dword [0x790490]
mov eax, ebp
movzx ebp, byte [0x790494]
mov dword [ebx + ecx], esi
xchg ebp, eax
mov byte [ebx + ecx + 4], al
xchg ebp, eax
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4ba32e
mov dword [edi], ebx
jmp 0x4b89e5
mov eax, ebx
call fcn.0044c9e0
jmp 0x4b89e5
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ecx
lea eax, [0x731080]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.00438b40
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x4ba2ef
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.004b5820
jmp 0x4b89e5
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a3030
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov byte [esp + 4], al
mov eax, dword [esp + 0xfc]
mov dword [esp + 8], eax
call fcn.004b5dd0
jmp 0x4b89e5
lea eax, [edx - 2]
cmp eax, 4
ja 0x4ba47f
cmp edx, 3
ja 0x4ba413
cmp edx, 2
jne 0x4ba408
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov byte [esp + 0xc], 1
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.004b5eb0
jmp 0x4b89e5
movsx eax, byte [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4ba3e3
cmp edx, 4
jne 0x4ba423
movsx eax, word [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4ba3e3
cmp edx, 5
jne 0x4ba432
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4ba3e3
cmp edx, 6
jne 0x4ba43f
mov ecx, dword [ebp]
mov eax, dword [ebp + 4]
jmp 0x4ba3e3
lea eax, [0x74d440]
mov dword [esp], eax
call fcn.00409d00
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x11
mov eax, dword [0xa8f2d0]
test eax, eax
jne 0x4ba46f
lea eax, [0x7982c0]
mov dword [edi], eax
jmp 0x4ba753
lea eax, [0x7982c0]
call fcn.0044c9e0
jmp 0x4ba753
lea eax, [edx - 7]
cmp eax, 5
ja 0x4b8f75
cmp edx, 9
ja 0x4ba51d
cmp edx, 7
jne 0x4ba4c3
mov eax, dword [ebp]
xor ecx, ecx
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 0
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.004b5eb0
jmp 0x4b89e5
cmp edx, 8
jne 0x4ba4d0
movzx eax, byte [ebp]
xor ecx, ecx
jmp 0x4ba49e
cmp edx, 9
jne 0x4ba4dd
movzx eax, word [ebp]
xor ecx, ecx
jmp 0x4ba49e
lea eax, [0x74d440]
mov dword [esp], eax
call fcn.00409d00
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0xa8f2d0]
test eax, eax
jne 0x4ba50d
lea eax, [0x798bfb]
mov dword [edi], eax
jmp 0x4ba735
lea eax, [0x798bfb]
call fcn.0044c9e0
jmp 0x4ba735
cmp edx, 0xa
jne 0x4ba52c
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4ba49e
cmp edx, 0xb
jne 0x4ba53c
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
jmp 0x4ba49e
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4ba49e
cmp edx, 0xe
ja 0x4ba5aa
cmp edx, 0xd
jne 0x4ba57f
movss xmm0, dword [ebp]
mov dword [esp], edi
cvtss2sd xmm0, xmm0
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x20
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.004b61d0
jmp 0x4b89e5
movsd xmm0, qword [ebp]
mov dword [esp], edi
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x40
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.004b61d0
jmp 0x4b89e5
cmp edx, 0xf
jne 0x4ba5ed
movss xmm0, dword [ebp]
movss xmm1, dword [ebp + 4]
mov dword [esp], edi
cvtss2sd xmm0, xmm0
movsd qword [esp + 4], xmm0
cvtss2sd xmm0, xmm1
movsd qword [esp + 0xc], xmm0
mov dword [esp + 0x14], 0x40
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
call fcn.004b6330
jmp 0x4b89e5
movsd xmm0, qword [ebp + 8]
movsd xmm1, qword [ebp]
mov dword [esp], edi
movsd qword [esp + 4], xmm1
movsd qword [esp + 0xc], xmm0
mov dword [esp + 0x14], pe_nt_image_headers32
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
call fcn.004b6330
jmp 0x4b89e5
lea esi, [edi + 0x14]
mov eax, edi
mov edi, esi
mov ebx, eax
mov eax, dword [esp + 0xf0]
call fcn.0044c9e0
lea edi, [ebx + 0x18]
mov ebp, eax
mov eax, dword [esp + 0xf4]
call fcn.0044c9e0
mov ebx, ebp
mov ebp, eax
mov edi, dword [esp + 0xec]
jmp 0x4b850e
lea ebx, [edi + 0x10]
mov eax, edi
mov edi, ebx
mov ebp, eax
xor eax, eax
call fcn.0044c9e0
mov edi, ebp
jmp 0x4b84e9
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004a5a60
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xec]
mov dword [edx + 0xc], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x4ba6e3
mov dword [edx + 0x10], eax
mov dword [esp], edx
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.004b77d0
movzx eax, byte [esp + 8]
test al, al
jne 0x4ba6dc
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xf8]
jmp 0x4b84c6
add esp, 0xe8
ret
lea edi, [edx + 0x10]
call fcn.0044c9e0
jmp 0x4ba6ad
mov edx, dword [esp + 0xf8]
jmp 0x4b84c6
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x73d160]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.004275c0
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x73d160]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.004275c0
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x73d160]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.004275c0
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x73d160]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.004275c0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004266e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.004267e0
ud2
call fcn.0044b280
jmp fcn.004b8480