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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x99c
mov eax, dword [0x48eb38]
push ebx
push esi
push edi
mov dword [esp + 0x9a4], eax
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x60]
push 0xc4
xor ebx, ebx
push ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], eax
call fcn.00401540
lea edx, [esp + 0x130]
push 0xc4
push edx
call fcn.00401540
lea eax, [esp + 0x520]
push 0xc4
push eax
call fcn.00401540
lea ecx, [esp + 0x398]
push 0xc4
push ecx
call fcn.00401540
lea edx, [esp + 0x210]
push 0xc4
push edx
call fcn.00401540
lea eax, [esp + 0x470]
push 0xc4
push eax
call fcn.00401540
mov ecx, dword [0x48eb14]
mov edx, dword [0x48eb10]
mov eax, dword [0x13b203c]
push ecx
push edx
push eax
lea ecx, [esp + 0x9c]
push ecx
lea edx, [esp + 0x2f8]
push edx
call fcn.00447ea0
mov edx, dword [0x13b203c]
add esp, 0x44
mov esi, eax
mov eax, dword [0x48eb14]
push eax
mov ecx, 0x31
lea edi, [esp + 0x64]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb10]
push ecx
push edx
lea eax, [esp + 0x134]
push eax
lea ecx, [esp + 0x2c8]
push ecx
call fcn.00447ea0
mov edx, dword [0x48eb14]
push edx
mov esi, eax
mov eax, dword [0x48eb10]
push eax
mov ecx, 0x31
lea edi, [esp + 0x144]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x13b203c]
push ecx
lea edx, [esp + 0x530]
push edx
lea eax, [esp + 0x2dc]
push eax
call fcn.00447ea0
mov ecx, 0x31
mov esi, eax
lea edi, [esp + 0x538]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb14]
push ecx
mov edx, dword [0x48eb10]
mov eax, dword [0x13b203c]
push edx
push eax
lea ecx, [esp + 0x3b4]
push ecx
lea edx, [esp + 0x2f0]
push edx
call fcn.00447ea0
mov edx, dword [0x13b203c]
mov esi, eax
mov eax, dword [0x48eb14]
push eax
mov ecx, 0x31
lea edi, [esp + 0x3c0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb10]
push ecx
push edx
lea eax, [esp + 0x238]
push eax
lea ecx, [esp + 0x304]
push ecx
call fcn.00447ea0
mov edx, dword [0x48eb14]
add esp, 0x50
push edx
mov esi, eax
mov eax, dword [0x48eb10]
push eax
mov ecx, 0x31
lea edi, [esp + 0x1f8]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x13b203c]
push ecx
lea edx, [esp + 0x454]
push edx
lea eax, [esp + 0x2c8]
push eax
call fcn.00447ea0
mov edx, dword [0x48eb10]
add esp, 0x14
push ebx
push ebx
push ebx
sub esp, 0xc4
mov esi, eax
mov ecx, 0x31
lea edi, [esp + 0x518]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
mov ecx, 0x31
mov esi, 0x13b1f70
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb14]
push ecx
push edx
push ebx
push ebx
sub esp, 0xc4
mov esi, eax
mov ecx, 0x31
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00413a80
add esp, 0xe0
mov edi, esp
lea eax, [esp + 0x37c]
push str.Count
mov ecx, 0x31
lea esi, [esp + 0x2b8]
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.004492d0
mov ecx, 0x31
mov esi, eax
lea edi, [esp + 0x2bc]
add esp, 0xcc
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x30], 0xa2
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], 0x12
mov dword [esp + 0x3c], 0x24
mov dword [esp + 0x40], 0x36
mov dword [esp + 0x44], 0x48
mov dword [esp + 0x48], 0x5a
mov dword [esp + 0x4c], 0x6c
mov dword [esp + 0x50], 0x7e
mov dword [esp + 0x54], 0x90
mov ecx, dword [0xd0d11c]
push ecx
push 0
push 0
push 6
push 4
push 0x47a7d0
call fcn.004471b0
mov esi, dword [esp + 0x28]
mov edx, dword [esi*4 + 0x4871f0]
push edx
lea eax, [esp + 0x7bc]
push str._CharFlg__d_
push eax
call fcn.0045cab0
lea ecx, [esp + 0x7c4]
push ecx
call fcn.0042d870
mov edx, dword [esi*4 + 0x4871f0]
push edx
mov dword [esp + 0x50], eax
lea eax, [esp + 0x7cc]
push str._InFlg__d_
push eax
call fcn.0045cab0
lea ecx, [esp + 0x7d4]
push ecx
call fcn.0042d870
add esp, 0x38
cmp eax, 0x63
mov dword [esp + 0x28], eax
jle 0x4369c7
mov dword [esp + 0x28], 0x63
mov eax, dword [esp + 0x10]
inc ebx
lea eax, [eax + eax*2 + 0x4871a8]
push ebx
push eax
lea edx, [esp + 0x6a8]
push str.d_sP_d
push edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], eax
call fcn.0045cab0
sub esp, 0xb4
mov edi, esp
mov ecx, 0x31
lea esi, [esp + 0x124]
lea eax, [esp + 0x764]
rep movsd dword es:[edi], dword [esi]
push eax
lea ecx, [esp + 0x380]
push ecx
call fcn.004492d0
mov edx, dword [esp + 0xe8]
push ebx
push edx
mov esi, eax
lea eax, [esp + 0x774]
push str.d_sP_dC
mov ecx, 0x31
lea edi, [esp + 0x138]
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.0045cab0
add esp, 0x18
mov edi, esp
mov ecx, 0x31
lea esi, [esp + 0x1ec]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x764]
push ecx
lea edx, [esp + 0x6a0]
push edx
call fcn.004492d0
mov ecx, 0x31
mov esi, eax
lea edi, [esp + 0x1f4]
add esp, 0xcc
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x14], 0
mov ebx, 0xa0
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x24], eax
jle 0x436b02
mov edx, dword [0x48eb10]
push ebx
push 0
push 0
sub esp, 0xc4
mov edi, esp
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x1fc]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
mov ecx, 0x31
lea esi, [esp + 0x2c4]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb14]
push ecx
push edx
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x2d0]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00412410
add esp, 0x270
mov edx, dword [esp + 0x14]
inc edx
add ebx, 0xa
cmp ebx, 0xe6
mov dword [esp + 0x14], edx
jl 0x436a90
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx*4 + 0x4871f0]
imul eax, eax, 0xb
mov cl, byte [eax + 0x7c96e2]
test cl, cl
je 0x436b9e
mov edx, dword [0x48eb10]
push 0x8c
push 0
push 0
sub esp, 0xc4
mov edi, esp
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x1fc]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
mov ecx, 0x31
lea esi, [esp + 0x2c4]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb14]
push ecx
push edx
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x2d0]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00412410
add esp, 0x270
mov eax, dword [ebx*4 + 0x4871f0]
imul eax, eax, 0xb
mov cl, byte [eax + 0x7c96e1]
test cl, cl
je 0x436c1e
mov edx, dword [0x48eb10]
push 0x91
push 0
push 0
sub esp, 0xc4
mov edi, esp
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x1fc]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
mov ecx, 0x31
lea esi, [esp + 0x2c4]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb14]
push ecx
push edx
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x2d0]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00412410
add esp, 0x270
mov eax, dword [ebx*4 + 0x4871f0]
mov ecx, dword [esp + 0x24]
cmp ecx, dword [eax*4 + 0x4872a0]
jl 0x436c9d
mov edx, dword [0x48eb14]
mov eax, dword [0x48eb10]
push 0x96
push 0
push 0
sub esp, 0xc4
mov edi, esp
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x1fc]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
push edx
push eax
push 0
push 0
mov ecx, 0x31
lea esi, [esp + 0x2d4]
rep movsd dword es:[edi], dword [esi]
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x2d0]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00412410
add esp, 0x270
mov ebx, dword [esp + 0x28]
cmp ebx, 0xa
jl 0x436d08
mov eax, 0x66666667
imul ebx
sar edx, 2
push 0xff
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [esp + ecx*4 + 0x34]
push 0
push edx
sub esp, 0xc4
mov edi, esp
push 0x15
push 0x12
push 0x201
push 0x295
mov ecx, 0x31
lea esi, [esp + 0x2d0]
rep movsd dword es:[edi], dword [esi]
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x204]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00413210
add esp, 0x1a4
mov eax, ebx
cdq
mov ecx, 0xa
idiv ecx
push 0xff
push 0
mov ecx, 0x31
lea esi, [esp + 0x1f8]
mov edx, dword [esp + edx*4 + 0x38]
push edx
sub esp, 0xc4
mov edi, esp
push 0x15
push 0x12
push 0x201
rep movsd dword es:[edi], dword [esi]
push 0x2ab
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x204]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00413210
mov eax, dword [0x48eb14]
add esp, 0x1a4
push 0
push 0
push 0
sub esp, 0xc4
mov edi, esp
push eax
mov ecx, 0x31
lea esi, [esp + 0x134]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb10]
push ecx
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
mov esi, 0x13b2034
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00413a80
push 0
push 0
push 0x1f4
push 0x47a7d0
push 0xe
call fcn.004153e0
add esp, 0x1b8
jmp 0x436dd0
mov edx, dword [0x48eb14]
mov eax, dword [0x48eb10]
push 0
push 0
push 0
sub esp, 0xc4
mov edi, esp
push edx
push eax
push 0
push 0
mov ecx, 0x31
lea esi, [esp + 0x140]
rep movsd dword es:[edi], dword [esi]
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x524]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00413a80
mov ecx, dword [esp + 0x2f0]
mov edx, dword [esp + 0x2ec]
add esp, 0x1a4
push ecx
push edx
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x1fc]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00448620
push eax
call fcn.0044dfa0
movzx ebx, al
add esp, 0xd8
test ebx, ebx
je 0x436f12
cmp ebx, 0x14
jne 0x436f67
mov eax, dword [esp + 0x10]
mov ecx, dword [eax*4 + 0x4871f0]
imul ecx, ecx, 0xb
mov al, byte [ecx + 0x7c96e1]
test al, al
je 0x436f8c
cmp dword [esp + 0x18], ebx
je 0x436eab
mov ecx, dword [0xd0d118]
push ecx
push 0
push 0
push 7
push 1
push str.SYS_OV
call fcn.004471b0
add esp, 0x18
mov edx, dword [0x48eb14]
mov eax, dword [0x48eb10]
push ebx
push 0
push 0
sub esp, 0xc4
mov edi, esp
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x2c4]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
push edx
push eax
push 0
push 0
mov ecx, 0x31
lea esi, [esp + 0x2d4]
rep movsd dword es:[edi], dword [esi]
sub esp, 0xc4
mov ecx, 0x31
lea esi, [esp + 0x5f0]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00412410
add esp, 0x270
lea ecx, [esp + 0x58]
push 0xffffffffffffffff
push ecx
mov dword [esp + 0x20], ebx
call fcn.0044c300
add esp, 8
test eax, eax
je case.0x436f60.11
test ebx, ebx
je 0x436f4d
mov edx, dword [0xd0d118]
push edx
push 0
push 0
push 7
push 1
push str.SYS_OK
call fcn.004471b0
add esp, 0x18
lea eax, [ebx - 0xa]
cmp eax, 0x78
ja case.0x436f60.11
movzx eax, byte [eax + 0x437284]
jmp dword [eax*4 + 0x43726c]
cmp ebx, 0x1e
jne 0x436e89
mov edx, dword [esp + 0x10]
mov eax, dword [edx*4 + 0x4871f0]
imul eax, eax, 0xb
mov cl, byte [eax + 0x7c96e2]
test cl, cl
jne 0x436e89
xor ebx, ebx
jmp 0x436f12
mov ecx, dword [esp + 0x1c]
mov eax, 0x66666667
imul ebx
sar edx, 2
mov eax, edx
push ecx
shr eax, 0x1f
lea ecx, [edx + eax + 1]
push ecx
lea edx, [esp + 0x8a8]
push str.sw200_dd_s
push edx
call fcn.0045cab0
mov eax, dword [0xd0d118]
push eax
push 0
push 0
push 6
lea ecx, [esp + 0x8c0]
push 1
push ecx
call fcn.004471b0
add esp, 0x28
jmp case.0x436f60.11
mov eax, dword [esp + 0x10]
mov edx, dword [eax*4 + 0x4871f0]
cmp dword [edx*4 + 0x487248], 1
jne 0x4370a5
lea eax, [esp + 0x58]
push eax
call fcn.0044c440
add esp, 4
cmp eax, 1
je case.0x436f60.130
push 5
call dword [0x479090]
cmp dword [0x1002428], 1
je 0x437103
mov edx, dword [0x48eb10]
push 0
push 0
push 0
sub esp, 0xc4
mov edi, esp
mov ecx, 0x31
lea esi, [esp + 0x450]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb14]
push ecx
push edx
push 0
push 0
sub esp, 0xc4
mov ecx, 0x31
mov esi, 0x13b1f70
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00413a80
mov eax, dword [0x48eb14]
add esp, 0x1a4
push 0
push 0
sub esp, 0xc4
mov edi, esp
mov ecx, 0x31
mov esi, 0x13b1f70
push eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48eb10]
push ecx
push 0
push 0
call fcn.00447dd0
add esp, 0xdc
jmp 0x436dd0
mov edx, dword [eax*4 + 0x4871f0]
mov ebx, dword [esp + 0x20]
mov ecx, dword [edx*4 + 0x487248]
lea eax, [ebx + 1]
cmp eax, ecx
jle 0x436944
xor ebx, ebx
jmp 0x436944
mov eax, dword [esp + 0x10]
dec eax
cmp eax, 1
mov dword [esp + 0x10], eax
jge 0x4370df
mov dword [esp + 0x10], 0x14
xor ebx, ebx
jmp 0x436944
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 0x14
mov dword [esp + 0x10], eax
jle 0x4370fc
mov dword [esp + 0x10], 1
xor ebx, ebx
jmp 0x436944
call fcn.00448650
mov ecx, dword [0xd0d11c]
push ecx
push 0
push 0
push 6
push 4
push 0x47a7d0
call fcn.004471b0
lea edx, [esp + 0x78]
push edx
call fcn.00449240
lea eax, [esp + 0x144]
push eax
call fcn.00449240
lea ecx, [esp + 0x530]
push ecx
call fcn.00449240
lea edx, [esp + 0x3a4]
push edx
call fcn.00449240
lea eax, [esp + 0x218]
push eax
call fcn.00449240
lea ecx, [esp + 0x474]
push ecx
call fcn.00449240
add esp, 0x30
xor eax, eax
mov ecx, dword [esp + 0x9a4]
call fcn.0045c945
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [0xd0d11c]
push ecx
push 0
push 0
push 6
push 4
push 0x47a7d0
call fcn.004471b0
mov edx, dword [0x48eb14]
mov eax, dword [0x48eb10]
add esp, 0x18
push 0
push 0
push 0
sub esp, 0xc4
mov edi, esp
push edx
push eax
push 0
push 0
mov ecx, 0x31
lea esi, [esp + 0x528]
rep movsd dword es:[edi], dword [esi]
sub esp, 0xc4
mov ecx, 0x31
mov esi, 0x13b2034
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00413a80
push 0
push 0
push 0x1f4
push 0x47a7d0
push 0xe
call fcn.004153e0
lea ecx, [esp + 0x218]
add esp, 0x1b8
push ecx
call fcn.00449240
lea edx, [esp + 0x12c]
push edx
call fcn.00449240
lea eax, [esp + 0x518]
push eax
call fcn.00449240
lea ecx, [esp + 0x38c]
push ecx
call fcn.00449240
lea edx, [esp + 0x200]
push edx
call fcn.00449240
lea eax, [esp + 0x45c]
push eax
call fcn.00449240
mov ecx, dword [esp + 0x9bc]
add esp, 0x18
mov eax, 1
call fcn.0045c945
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret