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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x12
push 0
push 0
dec ecx
jne 0x53b928
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004054d0
xor eax, eax
push ebp
push 0x53c052
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
push ebp
push 0x53c002
push dword fs:[edx]
mov dword fs:[edx], esp
lea eax, [ebp - 4]
mov ecx, 0x18
mov edx, 1
call fcn.00405580
lea ecx, [ebp - 0x60]
mov dx, 0x3d4c
mov eax, dword [ebp - 4]
call fcn.005f4e48
mov edx, dword [ebp - 0x60]
lea eax, [ebp - 4]
call fcn.004050a8
lea eax, [ebp - 0x30]
call fcn.00405010
lea eax, [ebp - 0x2c]
call fcn.00405010
lea eax, [ebp - 0x28]
call fcn.00405010
lea eax, [ebp - 0x24]
call fcn.00405010
lea eax, [ebp - 0x20]
call fcn.00405010
lea eax, [ebp - 0x14]
call fcn.00405010
lea eax, [ebp - 0x18]
call fcn.00405010
lea eax, [ebp - 0x1c]
call fcn.00405010
lea eax, [ebp - 0xc]
call fcn.00405010
lea eax, [ebp - 0x24]
call fcn.00405010
lea eax, [ebp - 0x34]
call fcn.00405010
lea eax, [ebp - 0x10]
call fcn.00405010
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
xor eax, eax
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x5c], eax
jmp case.0x53ba6c.0
mov eax, dword [ebp - 4]
mov bl, byte [eax]
lea eax, [ebp - 0x64]
push eax
mov ecx, 2
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.00405540
mov eax, dword [ebp - 0x64]
call fcn.005f48bc
mov esi, eax
lea eax, [ebp - 8]
push eax
movzx ecx, si
mov edx, 4
mov eax, dword [ebp - 4]
call fcn.00405540
movzx ecx, si
add ecx, 3
lea eax, [ebp - 4]
mov edx, 1
call fcn.00405580
xor eax, eax
mov al, bl
cmp eax, 0x32
ja case.0x53ba6c.0
mov al, byte [eax + 0x53ba73]
jmp dword [eax*4 + 0x53baa6]
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x68]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00405540
mov eax, dword [ebp - 0x68]
call fcn.005f4934
xor edx, edx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
jmp case.0x53ba6c.0
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x1c]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x20]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x24]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x28]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 8]
call fcn.004050a8
jmp case.0x53ba6c.0
cmp dword [ebp - 0x5c], 0
jne 0x53bbd7
mov dl, 1
mov eax, dword [0x49f29c]
call fcn.004a028c
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x6c]
push eax
mov ecx, 6
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00405540
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [eax]
call dword [ecx + 0x34]
jmp case.0x53ba6c.0
lea eax, [ebp - 0x70]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00405540
mov eax, dword [ebp - 0x70]
call fcn.005f4934
mov dword [ebp - 0x3c], eax
jmp case.0x53ba6c.0
lea eax, [ebp - 0x74]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00405540
mov eax, dword [ebp - 0x74]
call fcn.005f4934
mov dword [ebp - 0x40], eax
jmp case.0x53ba6c.0
lea eax, [ebp - 0x78]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00405540
mov eax, dword [ebp - 0x78]
call fcn.005f4934
mov dword [ebp - 0x44], eax
jmp case.0x53ba6c.0
lea eax, [ebp - 0x7c]
push eax
mov ecx, 8
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00405540
mov eax, dword [ebp - 0x7c]
call fcn.005f48e4
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
jmp case.0x53ba6c.0
mov eax, 0x90
call fcn.0040bf90
mov ebx, eax
lea eax, [ebx + 0x14]
push eax
mov ecx, 0x14
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00405540
mov eax, dword [ebp - 0x50]
mov dword [ebx + 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebx + 0x74], eax
lea eax, [ebx + 0x50]
mov edx, dword [ebp - 0x10]
call fcn.00405064
lea edx, [ebp - 0x84]
mov eax, dword [ebp - 0x10]
call fcn.0040cf08
mov eax, dword [ebp - 0x84]
lea edx, [ebp - 0x80]
call fcn.0040c074
mov edx, dword [ebp - 0x80]
lea eax, [ebx + 0x20]
call fcn.00405064
mov eax, dword [ebx + 0x20]
call fcn.004f4f48
mov byte [ebx + 0x7c], al
lea eax, [ebx + 0x30]
mov edx, dword [ebp - 0x14]
call fcn.00405064
lea eax, [ebx + 0x38]
mov edx, dword [ebp - 0x18]
call fcn.00405064
lea eax, [ebx + 0x34]
mov edx, dword [ebp - 0x1c]
call fcn.00405064
lea eax, [ebx + 0x3c]
mov edx, dword [ebp - 0x20]
call fcn.00405064
lea eax, [ebx + 0x4c]
mov edx, dword [ebp - 0x24]
call fcn.00405064
lea eax, [ebx + 0x58]
mov edx, dword [ebp - 0x28]
call fcn.00405064
lea eax, [ebx + 0x48]
mov edx, dword [ebp - 0x2c]
call fcn.00405064
lea eax, [ebx + 0x54]
mov edx, dword [ebp - 0x30]
call fcn.00405064
mov eax, dword [ebp - 0x3c]
mov dword [ebx + 0x60], eax
mov eax, dword [ebp - 0x40]
mov dword [ebx + 0x64], eax
mov eax, dword [ebp - 0x44]
mov dword [ebx + 0x68], eax
lea edx, [ebp - 0x88]
mov eax, dword [ebp - 0xc]
call fcn.004dc728
mov edx, dword [ebp - 0x88]
mov eax, ebx
call fcn.0051c5c4
mov dword [ebp - 0x54], eax
mov eax, dword [0x6052e4]
mov eax, dword [eax]
mov edx, dword [ebp - 0x54]
call fcn.0049f414
cmp dword [ebp - 0x5c], 0
je 0x53bedb
jmp 0x53bebe
mov eax, dword [ebp - 0x5c]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, eax
dec edx
lea ecx, [ebp - 0x38]
mov eax, dword [ebp - 0x5c]
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp - 0x5c]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edx, eax
dec edx
mov eax, dword [ebp - 0x5c]
mov ecx, dword [eax]
call dword [ecx + 0x44]
lea eax, [ebp - 0x8c]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.00405540
mov eax, dword [ebp - 0x8c]
call fcn.005f4934
mov edi, eax
lea eax, [ebp - 0x90]
push eax
mov ecx, 2
mov edx, 5
mov eax, dword [ebp - 0x38]
call fcn.00405540
mov eax, dword [ebp - 0x90]
call fcn.005f48bc
mov esi, eax
test si, si
je 0x53bebe
test edi, edi
je 0x53bebe
mov dl, 1
mov eax, dword [0x5f6f54]
call fcn.005f754c
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
mov dword [eax + 0x18], edx
mov eax, dword [ebp - 0x58]
mov dword [eax + 0x68], edi
mov eax, dword [ebp - 0x58]
mov word [eax + 0x6c], si
mov eax, dword [ebp - 0x58]
xor edx, edx
mov dword [eax + 0x64], edx
push 0x53c068
lea edx, [ebp - 0x94]
mov eax, edi
call fcn.0056838c
push dword [ebp - 0x94]
push 0x53c078
mov eax, dword [ebp - 0x58]
add eax, 0x20
mov edx, 3
call fcn.004053a0
mov eax, dword [ebp - 0x58]
xor edx, edx
mov dword [eax + 0x88], edx
mov eax, dword [ebp - 0x58]
xor edx, edx
mov dword [eax + 0x78], edx
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
mov dword [eax + 0xc8], edx
mov eax, dword [ebp - 0x58]
call fcn.005f7a7c
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 0x64]
mov edx, dword [ebp - 0x58]
call fcn.0049f414
mov eax, dword [ebp - 0x5c]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jg 0x53bda9
mov eax, dword [ebp - 0x5c]
call fcn.004041a4
xor eax, eax
mov dword [ebp - 0x5c], eax
mov esi, ebx
lea eax, [esi + 0x14]
call fcn.00405010
lea eax, [esi + 0x18]
call fcn.00405010
lea eax, [esi + 0x50]
call fcn.00405010
lea eax, [esi + 0x30]
call fcn.00405010
lea eax, [esi + 0x38]
call fcn.00405010
lea eax, [esi + 0x34]
call fcn.00405010
lea eax, [esi + 0x3c]
call fcn.00405010
lea eax, [esi + 0x4c]
call fcn.00405010
lea eax, [esi + 0x58]
call fcn.00405010
lea eax, [esi + 0x48]
call fcn.00405010
lea eax, [esi + 0x54]
call fcn.00405010
mov eax, ebx
call fcn.00402eb4
lea eax, [ebp - 0x30]
call fcn.00405010
lea eax, [ebp - 0x2c]
call fcn.00405010
lea eax, [ebp - 0x28]
call fcn.00405010
lea eax, [ebp - 0x24]
call fcn.00405010
lea eax, [ebp - 0x20]
call fcn.00405010
lea eax, [ebp - 0x14]
call fcn.00405010
lea eax, [ebp - 0x18]
call fcn.00405010
lea eax, [ebp - 0x1c]
call fcn.00405010
lea eax, [ebp - 0xc]
call fcn.00405010
lea eax, [ebp - 0x24]
call fcn.00405010
lea eax, [ebp - 0x34]
call fcn.00405010
lea eax, [ebp - 0x10]
call fcn.00405010
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
xor eax, eax
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 4]
call fcn.004052e0
dec eax
jg 0x53ba0d
mov eax, dword [0x604c40]
mov eax, dword [eax]
mov eax, dword [eax + 0x510]
mov edx, dword [eax + 0x240]
mov ecx, dword [0x60540c]
cmp edx, dword [ecx]
je 0x53bff8
mov edx, dword [0x60540c]
mov edx, dword [edx]
mov ecx, dword [0x604c40]
call fcn.004c8458
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53c00c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x53c059
lea eax, [ebp - 0x94]
mov edx, 3
call fcn.00405034
lea eax, [ebp - 0x88]
call fcn.00405700
lea eax, [ebp - 0x84]
mov edx, 0xa
call fcn.00405034
lea eax, [ebp - 0x38]
mov edx, 0xe
call fcn.00405034
ret
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add bh, bh
xor edx, edx
call fcn.004ac790
xor edx, edx
mov eax, ebx
call fcn.004ad774
mov edx, 0x96
call fcn.004ac870
lea edx, [ebp - 0xac]
mov eax, 0x211
call fcn.00580ef8
mov eax, dword [ebp - 0xac]
push eax
mov edx, 1
mov eax, ebx
call fcn.004ad774
pop edx
call fcn.004ac9f0
mov edx, 1
mov eax, ebx
call fcn.004ad774
mov dl, 2
call fcn.004ac790
mov edx, 1
mov eax, ebx
call fcn.004ad774
mov edx, 0x3c
call fcn.004ac870
lea edx, [ebp - 0xb0]
mov eax, 0x226
call fcn.00580ef8
mov eax, dword [ebp - 0xb0]
push eax
mov edx, 2
mov eax, ebx
call fcn.004ad774
pop edx
call fcn.004ac9f0
mov edx, 2
mov eax, ebx
call fcn.004ad774
mov dl, 1
call fcn.004ac790
mov edx, 2
mov eax, ebx
call fcn.004ad774
mov edx, 0x4b
call fcn.004ac870
lea edx, [ebp - 0xb4]
mov eax, 0x228
call fcn.00580ef8
mov eax, dword [ebp - 0xb4]
push eax
mov edx, 3
mov eax, ebx
call fcn.004ad774
pop edx
call fcn.004ac9f0
mov edx, 3
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac790
mov edx, 3
mov eax, ebx
call fcn.004ad774
mov edx, 0x96
call fcn.004ac870
mov edx, 4
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac9f0
mov edx, 4
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac870
mov edx, 5
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac9f0
mov edx, 5
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac870
mov edx, 6
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac9f0
mov edx, 6
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac870
mov edx, 7
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac9f0
mov edx, 7
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac870
mov edx, 8
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac9f0
mov edx, 8
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac870
mov edx, 9
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac9f0
mov edx, 9
mov eax, ebx
call fcn.004ad774
xor edx, edx
call fcn.004ac870
mov eax, dword [edi + 0x214]
mov edx, 3
call fcn.004af25c
jmp 0x5889ef
xor esi, esi
mov edx, esi
mov eax, ebx
call fcn.004ad774
mov edx, 0x3e8
call fcn.004ac810
mov edx, esi
mov eax, ebx
call fcn.004ad774
mov eax, dword [eax + 0xc]
xor edx, edx
call fcn.00405a58
jne 0x588a2f
mov edx, esi
mov eax, ebx
call fcn.004ad774
mov dl, byte [0x588aa4]
call fcn.004ac88c
jmp 0x588a43
mov edx, esi
mov eax, ebx
call fcn.004ad774
mov dl, byte [0x588aa8]
call fcn.004ac88c
inc esi
cmp esi, 0xa
jne 0x5889f1
mov al, byte [ebp + 0x10]
push eax
mov al, byte [ebp + 0xc]
push eax
mov ecx, edi
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.00588aac
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x588a98
lea eax, [ebp - 0xfc]
mov edx, 0x3d
call fcn.00405718
lea eax, [ebp - 8]
mov edx, 2
call fcn.00405034
lea eax, [ebp + 0x14]
call fcn.00405010
ret