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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x55429c
sub esp, 0x88
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x553a27
movzx ebx, byte [edx]
cmp bl, 0x10
ja 0x55374f
cmp bl, 0xd
je 0x553a05
cmp bl, 0xe
jb 0x553a19
mov ecx, dword [edx + 8]
mov ebx, dword [edx + 4]
test ecx, ecx
jbe 0x554294
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00553600
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x8c]
movzx edx, byte [ecx]
movzx ebx, word [ecx + 2]
movzx ebp, byte [eax]
xchg ebp, eax
cmp al, 2
xchg ebp, eax
jne 0x553688
mov ecx, eax
jmp 0x553741
xchg ebp, eax
cmp al, dl
xchg ebp, eax
jne 0x5536a6
mov ebp, ebx
and ebx, 0x20
movzx esi, word [eax + 2]
and esi, 0x20
cmp si, bx
jne 0x5536a8
mov ecx, eax
jmp 0x553741
mov ebp, ebx
mov ebx, dword [ecx + 8]
mov esi, dword [ecx + 4]
test ebx, ebx
jbe 0x55428b
cmp dword [esi], eax
je 0x553741
mov dword [esp + 0x54], eax
mov byte [esp + 0x23], dl
mov word [esp + 0x2e], bp
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
movzx ecx, byte [esp + 0x23]
mov byte [eax], cl
movzx ecx, word [esp + 0x2e]
mov word [eax + 2], cx
mov ecx, dword [0x705d20]
lea edi, [eax + 0x10]
test ecx, ecx
jne 0x553703
mov ecx, dword [esp + 0x54]
mov dword [eax + 0x10], ecx
jmp 0x553710
mov ecx, eax
mov eax, dword [esp + 0x54]
call fcn.0045d700
mov eax, ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], 1
mov ecx, dword [0x705d20]
test ecx, ecx
jne 0x55372d
mov dword [eax + 4], edi
jmp 0x55373f
lea ecx, [eax + 4]
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, edx
call fcn.0045d700
mov eax, ebx
mov ecx, eax
mov dword [esp + 0x90], ecx
add esp, 0x88
ret
cmp bl, 0x11
jne 0x553a00
mov ebx, dword [edx + 0x28]
test ebx, ebx
jne 0x553789
mov ebx, dword [edx + 0x2c]
test ebx, ebx
jne 0x553789
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 2
mov dword [esp + 0x90], eax
add esp, 0x88
ret
mov ecx, dword [edx + 8]
mov ebx, dword [edx + 4]
test ecx, ecx
jbe 0x554284
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00553600
mov eax, dword [esp + 4]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [ecx + 0x2c]
cmp edx, 0xffffffff
jne 0x55397a
mov edx, dword [ecx + 0x28]
test edx, edx
je 0x5538d3
cmp edx, 1
je 0x55382c
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 0x12
mov dword [eax + 8], 0
mov dword [eax + 0xc], 1
lea edi, [eax + 4]
mov ecx, dword [0x705d20]
lea edx, [eax + 0x10]
test ecx, ecx
jne 0x553804
mov dword [eax + 4], edx
jmp 0x55380f
mov ecx, eax
mov eax, edx
call fcn.0045d700
mov eax, ecx
mov dword [esp + 0x68], eax
mov dword [esp + 0x84], edi
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x50]
xor ebx, ebx
jmp 0x554095
movzx ecx, word [ecx + 2]
movzx edx, byte [eax]
cmp dl, 2
je 0x5538c5
mov word [esp + 0x2a], cx
cmp dl, 0xf
jne 0x553855
and ecx, 0x20
movzx ebx, word [eax + 2]
and ebx, 0x20
cmp bx, cx
je 0x5538c5
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 0xf
movzx ecx, word [esp + 0x2a]
mov word [eax + 2], cx
mov ecx, dword [0x705d20]
lea edi, [eax + 0x10]
test ecx, ecx
jne 0x553889
mov ecx, dword [esp + 0x50]
mov dword [eax + 0x10], ecx
jmp 0x553896
mov ecx, eax
mov eax, dword [esp + 0x50]
call fcn.0045d700
mov eax, ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], 1
mov ecx, dword [0x705d20]
test ecx, ecx
jne 0x5538b3
mov dword [eax + 4], edi
jmp 0x5538c5
lea ecx, [eax + 4]
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, edx
call fcn.0045d700
mov eax, ebx
mov dword [esp + 0x90], eax
add esp, 0x88
ret
movzx ecx, word [ecx + 2]
movzx edx, byte [eax]
cmp dl, 2
je 0x55396c
mov word [esp + 0x2c], cx
cmp dl, 0xe
jne 0x5538fc
and ecx, 0x20
movzx ebx, word [eax + 2]
and ebx, 0x20
cmp bx, cx
je 0x55396c
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 0xe
movzx ecx, word [esp + 0x2c]
mov word [eax + 2], cx
mov ecx, dword [0x705d20]
lea edi, [eax + 0x10]
test ecx, ecx
jne 0x553930
mov ecx, dword [esp + 0x50]
mov dword [eax + 0x10], ecx
jmp 0x55393d
mov ecx, eax
mov eax, dword [esp + 0x50]
call fcn.0045d700
mov eax, ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], 1
mov ecx, dword [0x705d20]
test ecx, ecx
jne 0x55395a
mov dword [eax + 4], edi
jmp 0x55396c
lea ecx, [eax + 4]
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, edx
call fcn.0045d700
mov eax, ebx
mov dword [esp + 0x90], eax
add esp, 0x88
ret
mov ebx, dword [ecx + 0x28]
cmp ebx, 1
jne 0x553995
cmp edx, 1
jne 0x553995
mov dword [esp + 0x90], eax
add esp, 0x88
ret
test ebx, ebx
jg 0x5539a0
xor edx, edx
jmp 0x553d55
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 0x12
mov dword [eax + 8], 0
mov dword [eax + 0xc], 1
lea edi, [eax + 4]
mov ecx, dword [0x705d20]
lea edx, [eax + 0x10]
test ecx, ecx
jne 0x5539d8
mov dword [eax + 4], edx
jmp 0x5539e3
mov ecx, eax
mov eax, edx
call fcn.0045d700
mov eax, ecx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x80], edi
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x50]
xor ebx, ebx
jmp 0x553ca4
cmp bl, 0x13
ja 0x553a19
mov eax, dword [edx + 4]
mov dword [esp + 0x7c], eax
mov ecx, dword [edx + 8]
mov dword [esp + 0x44], ecx
mov ebx, edx
xor ebp, ebp
jmp 0x553a4a
mov dword [esp + 0x90], edx
add esp, 0x88
ret
mov dword [esp + 0x90], 0
add esp, 0x88
ret
mov esi, dword [esp + 0x3c]
lea ebp, [esi + 1]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x44]
mov ebx, edi
cmp ebp, ecx
jge 0x553c83
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x6c], edx
mov ecx, dword [eax + ebp*4]
mov dword [esp + 0x58], ecx
mov dword [esp], ecx
call fcn.00553600
mov eax, dword [esp + 4]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jne 0x553bd8
mov ebx, dword [esp + 0x58]
cmp eax, ebx
je 0x553bd8
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov edi, dword [esp + 4]
mov dword [esp + 0x6c], edi
mov eax, dword [0x705d20]
test eax, eax
jne 0x553abe
mov esi, dword [esp + 0x8c]
call fcn.0045ddba
jmp 0x553adb
lea eax, [0x598ec0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov eax, dword [esp + 0x8c]
mov dword [esp + 8], eax
call fcn.0040fb30
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov ebp, dword [0x705d20]
test ebp, ebp
jne 0x553b00
mov dword [ebx + 0x14], 0
jmp 0x553b0a
lea edi, [ebx + 0x14]
xor eax, eax
call fcn.0045d700
mov eax, dword [esp + 0x8c]
mov edx, dword [eax + 0xc]
mov ebp, dword [eax + 4]
mov ecx, dword [esp + 0x3c]
cmp ecx, edx
ja 0x553c91
lea edx, [ebx + 0x10]
cmp ecx, 1
ja 0x553b32
mov esi, 1
jmp 0x553b6e
mov dword [esp + 0x78], ebp
lea eax, [0x596600]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], ecx
call fcn.004472c0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x78]
mov esi, eax
mov dword [esp + 0x74], edx
mov dword [esp + 0x40], esi
lea eax, [0x596600]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ecx
call fcn.0040fc40
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x6c]
mov dword [ecx + 8], eax
mov edx, dword [esp + 0x40]
mov dword [ecx + 0xc], edx
mov edx, dword [0x705d20]
test edx, edx
jne 0x553bb9
mov edx, dword [esp + 0x74]
mov dword [ecx + 4], edx
jmp 0x553bc9
lea edi, [ecx + 4]
mov edx, eax
mov eax, dword [esp + 0x74]
call fcn.0045d700
mov eax, edx
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
je 0x553c7c
mov ebx, dword [edx + 8]
mov ebp, dword [edx + 4]
mov esi, dword [edx + 0xc]
mov edi, ecx
lea ecx, [ebx + 1]
cmp esi, ecx
jae 0x553c4f
mov dword [esp + 0x70], edx
lea eax, [0x596600]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.004472c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x70]
mov dword [ebx + 0xc], edx
mov edx, dword [0x705d20]
test edx, edx
jne 0x553c36
mov dword [ebx + 4], eax
jmp 0x553c3e
lea edi, [ebx + 4]
call fcn.0045d700
mov edx, ebx
mov edi, dword [esp + 0x8c]
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x60]
lea ecx, [ebx + 1]
mov dword [edx + 8], ecx
mov ecx, dword [0x705d20]
lea esi, [ebp + ebx*4]
test ecx, ecx
jne 0x553c6c
mov dword [ebp + ebx*4], eax
jmp 0x553a39
mov ecx, edi
mov edi, esi
call fcn.0045d700
mov edi, ecx
jmp 0x553a39
mov edi, ecx
jmp 0x553a39
mov dword [esp + 0x90], edx
add esp, 0x88
ret
call fcn.0045d7c0
mov ebp, dword [esp + 0x34]
lea ebx, [ebp + 1]
mov ecx, dword [esp + 0x8c]
cmp dword [ecx + 0x28], ebx
jle 0x553d4f
mov dword [esp + 0x34], ebx
mov ebp, dword [eax + 8]
lea esi, [ebp + 1]
mov ecx, dword [eax + 4]
mov ebx, dword [eax + 0xc]
cmp ebx, esi
jae 0x553d1e
lea eax, [0x596600]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], esi
call fcn.004472c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
mov dword [ebx + 0xc], edx
mov edx, dword [0x705d20]
test edx, edx
jne 0x553d08
mov dword [ebx + 4], eax
mov edi, dword [esp + 0x80]
jmp 0x553d14
mov edi, dword [esp + 0x80]
call fcn.0045d700
mov edx, dword [esp + 0x50]
mov ebp, ecx
mov ecx, eax
mov eax, ebx
lea ebx, [ebp + 1]
mov dword [eax + 8], ebx
mov ebx, dword [0x705d20]
lea esi, [ecx + ebp*4]
test ebx, ebx
jne 0x553d39
mov dword [ecx + ebp*4], edx
jmp 0x553c96
mov ecx, edi
mov edi, esi
mov ebx, eax
mov eax, edx
call fcn.0045d700
mov eax, ebx
mov edi, ecx
jmp 0x553c96
mov eax, edx
mov edx, dword [esp + 0x5c]
mov ebx, dword [ecx + 0x2c]
cmp dword [ecx + 0x28], ebx
jge 0x553e25
mov dword [esp + 0x5c], edx
movzx ebx, word [ecx + 2]
movzx ebp, byte [eax]
xchg ebp, eax
cmp al, 2
xchg ebp, eax
jne 0x553d7a
mov ebx, eax
jmp 0x553e1f
mov word [esp + 0x26], bx
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x553d9c
and ebx, 0x20
movzx esi, word [eax + 2]
and esi, 0x20
cmp si, bx
jne 0x553d9c
mov ebx, eax
jmp 0x553e1f
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 0x10
movzx ecx, word [esp + 0x26]
mov word [eax + 2], cx
mov ecx, dword [0x705d20]
lea edi, [eax + 0x10]
test ecx, ecx
jne 0x553dd0
mov ecx, dword [esp + 0x50]
mov dword [eax + 0x10], ecx
jmp 0x553de1
mov ecx, eax
mov eax, dword [esp + 0x50]
call fcn.0045d700
mov eax, ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 8], 1
mov dword [eax + 0xc], 1
mov edx, dword [0x705d20]
test edx, edx
jne 0x553dfe
mov dword [eax + 4], edi
jmp 0x553e10
lea edx, [eax + 4]
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ebx
call fcn.0045d700
mov eax, ebp
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x50]
mov ebp, dword [ecx + 0x28]
inc ebp
jmp 0x553e69
test edx, edx
je 0x553e37
mov dword [esp + 0x90], edx
add esp, 0x88
ret
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 1
mov dword [esp + 0x90], eax
add esp, 0x88
ret
mov esi, dword [esp + 0x30]
inc esi
mov edx, dword [esp + 0x5c]
mov ebx, eax
mov eax, ebp
mov ebp, esi
mov dword [esp + 0x4c], eax
cmp dword [ecx + 0x2c], ebp
jle 0x553fea
mov dword [esp + 0x30], ebp
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov dword [esp + 0x64], eax
mov byte [eax], 0x12
lea ecx, [0x596600]
mov dword [esp], ecx
lea edx, [eax + 0x10]
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 2
call fcn.004472c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [0x705d20]
test ebx, ebx
jne 0x553ee5
mov ebx, dword [esp + 0x50]
mov dword [eax], ebx
mov ebp, dword [esp + 0x4c]
mov dword [eax + 4], ebp
jmp 0x553f06
mov edi, eax
mov eax, dword [esp + 0x50]
call fcn.0045d700
lea ebx, [edi + 4]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, dword [esp + 0x4c]
call fcn.0045d700
mov eax, ebp
mov ebx, esi
add ecx, 2
mov ebp, dword [esp + 0x64]
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], edx
mov ecx, dword [0x705d20]
test ecx, ecx
jne 0x553f22
mov dword [ebp + 4], eax
jmp 0x553f2a
lea edi, [ebp + 4]
call fcn.0045d700
mov ecx, dword [esp + 0x8c]
movzx edx, word [ecx + 2]
movzx esi, byte [ebp]
xchg esi, eax
cmp al, 2
xchg esi, eax
jne 0x553f47
mov eax, ebx
jmp 0x553e5a
mov word [esp + 0x24], dx
xchg esi, eax
cmp al, 0x10
xchg esi, eax
jne 0x553f68
and edx, 0x20
mov eax, ebx
movzx ebx, word [ebp + 2]
and ebx, 0x20
cmp bx, dx
je 0x553e5a
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 0x10
movzx ecx, word [esp + 0x24]
mov word [eax + 2], cx
mov ecx, dword [0x705d20]
lea edi, [eax + 0x10]
test ecx, ecx
jne 0x553f9c
mov ecx, dword [esp + 0x64]
mov dword [eax + 0x10], ecx
jmp 0x553fa9
mov ecx, eax
mov eax, dword [esp + 0x64]
call fcn.0045d700
mov eax, ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], 1
mov ecx, dword [0x705d20]
test ecx, ecx
jne 0x553fc6
mov dword [eax + 4], edi
jmp 0x553fd8
lea ecx, [eax + 4]
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, edx
call fcn.0045d700
mov eax, ebx
mov ecx, dword [esp + 0x8c]
mov ebp, eax
mov eax, dword [esp + 0x50]
jmp 0x553e5a
test edx, edx
je 0x554079
mov ecx, dword [edx + 8]
lea ebx, [ecx + 1]
mov ebp, dword [edx + 4]
mov esi, dword [edx + 0xc]
cmp esi, ebx
jae 0x554052
lea eax, [0x596600]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.004472c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
mov dword [ebx + 0xc], edx
mov edx, dword [0x705d20]
test edx, edx
jne 0x554042
mov dword [ebx + 4], eax
jmp 0x55404a
lea edi, [ebx + 4]
call fcn.0045d700
mov edx, ebx
mov ebp, eax
mov eax, dword [esp + 0x4c]
lea ebx, [ecx + 1]
mov dword [edx + 8], ebx
mov ebx, dword [0x705d20]
lea edi, [ebp + ecx*4]
test ebx, ebx
jne 0x55406f
mov dword [ebp + ecx*4], eax
jmp 0x553e25
call fcn.0045d700
jmp 0x553e25
mov dword [esp + 0x90], eax
add esp, 0x88
ret
mov ebp, dword [esp + 0x38]
lea ebx, [ebp + 1]
mov ecx, dword [esp + 0x8c]
mov ebp, dword [ecx + 0x28]
dec ebp
cmp ebx, ebp
jge 0x554143
mov dword [esp + 0x38], ebx
mov ebp, dword [eax + 8]
lea esi, [ebp + 1]
mov ecx, dword [eax + 4]
mov ebx, dword [eax + 0xc]
cmp ebx, esi
jae 0x554112
lea eax, [0x596600]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], esi
call fcn.004472c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x68]
mov dword [ebx + 0xc], edx
mov edx, dword [0x705d20]
test edx, edx
jne 0x5540fc
mov dword [ebx + 4], eax
mov edi, dword [esp + 0x84]
jmp 0x554108
mov edi, dword [esp + 0x84]
call fcn.0045d700
mov edx, dword [esp + 0x50]
mov ebp, ecx
mov ecx, eax
mov eax, ebx
lea ebx, [ebp + 1]
mov dword [eax + 8], ebx
mov ebx, dword [0x705d20]
lea esi, [ecx + ebp*4]
test ebx, ebx
jne 0x55412d
mov dword [ecx + ebp*4], edx
jmp 0x554087
mov ecx, edi
mov edi, esi
mov ebx, eax
mov eax, edx
call fcn.0045d700
mov eax, ebx
mov edi, ecx
jmp 0x554087
movzx ecx, word [ecx + 2]
movzx ebx, byte [edx]
cmp bl, 2
je 0x5541e9
mov word [esp + 0x28], cx
cmp bl, 0xf
jne 0x55416c
and ecx, 0x20
movzx ebp, word [edx + 2]
and ebp, 0x20
cmp bp, cx
je 0x5541e9
lea eax, [0x598ec0]
mov dword [esp], eax
call fcn.0040b060
mov eax, dword [esp + 4]
mov byte [eax], 0xf
movzx ecx, word [esp + 0x28]
mov word [eax + 2], cx
mov ecx, dword [0x705d20]
lea edi, [eax + 0x10]
test ecx, ecx
jne 0x5541a0
mov ecx, dword [esp + 0x50]
mov dword [eax + 0x10], ecx
jmp 0x5541ad
mov ecx, eax
mov eax, dword [esp + 0x50]
call fcn.0045d700
mov eax, ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], 1
mov ecx, dword [0x705d20]
test ecx, ecx
jne 0x5541ca
mov dword [eax + 4], edi
jmp 0x5541dc
lea ecx, [eax + 4]
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, edx
call fcn.0045d700
mov eax, ebx
mov edi, dword [esp + 0x84]
mov edx, eax
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 8]
mov ebx, dword [eax + 4]
mov ebp, dword [eax + 0xc]
lea esi, [ecx + 1]
cmp ebp, esi
jae 0x554253
mov dword [esp + 0x48], edx
lea eax, [0x596600]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], esi
call fcn.004472c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x68]
mov dword [ebx + 0xc], edx
mov edx, dword [0x705d20]
test edx, edx
jne 0x55423d
mov dword [ebx + 4], eax
jmp 0x554249
mov edi, dword [esp + 0x84]
call fcn.0045d700
mov edx, dword [esp + 0x48]
mov ebp, eax
mov eax, ebx
mov ebx, ebp
lea ebp, [ecx + 1]
mov dword [eax + 8], ebp
mov ebp, dword [0x705d20]
lea edi, [ebx + ecx*4]
test ebp, ebp
jne 0x55426b
mov dword [ebx + ecx*4], edx
jmp 0x554276
mov ecx, eax
mov eax, edx
call fcn.0045d700
mov eax, ecx
mov dword [esp + 0x90], eax
add esp, 0x88
ret
xor eax, eax
call fcn.0045d780
xor eax, eax
mov ecx, ebx
call fcn.0045d780
xor eax, eax
call fcn.0045d780
nop
call fcn.0045c2f0
jmp fcn.00553600