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

Disassembly:
push 0xffffffffffffffff
push 0x5620c1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3c
mov al, byte [esp + 0x4c]
push ebx
push ebp
push esi
xor esi, esi
push edi
mov edi, ecx
mov byte [esp + 0x3c], al
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], esi
push 6
push 0x59e264
lea ecx, [esp + 0x2c]
mov dword [esp + 0x5c], esi
call fcn.005318a0
push 6
push 0x59c0fc
lea ecx, [esp + 0x28]
mov byte [esp + 0x5c], 1
call fcn.005318a0
push 6
push 0x59c0f4
lea ecx, [esp + 0x20]
mov byte [esp + 0x5c], 2
call fcn.005318a0
push esi
push esi
push ecx
mov byte [esp + 0x60], 3
mov ecx, esp
mov dword [esp + 0x40], esp
push 6
push 0x59b910
mov byte [esp + 0x28], 0
call fcn.005318a0
push ecx
mov byte [esp + 0x64], 4
mov ecx, esp
mov dword [esp + 0x40], esp
push 6
push 0x59c0ec
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x64], 3
call fcn.00533b90
mov ecx, edi
call fcn.00436300
mov ecx, dword [esp + 0x5c]
mov ebx, ecx
and ebx, 0xff
lea edx, [ebx + ebx*2]
lea ebp, [ebx + edx*4]
shl ebp, 2
cmp ebx, 9
mov dword [esp + 0x1c], ebp
mov al, byte [ebp + 0x573aca]
mov dl, byte [ebp + 0x573ad4]
mov si, word [ebp + 0x573ac0]
mov byte [esp + 0x12], al
mov ax, word [ebp + 0x573ac4]
mov byte [esp + 0x2c], dl
mov dword [esp + 0x28], eax
ja case.0x434ebb.1
xor edx, edx
mov dl, byte [ebx + 0x43540c]
jmp dword [edx*4 + 0x435404]
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x64], 5
mov ecx, esp
mov dword [esp + 0x40], esp
push 6
push 0x59d32c
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x64], 3
call fcn.00533b90
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x5c]
cmp cl, 1
jbe 0x434f12
cmp cl, 5
jne 0x434f1c
mov cl, byte [ebp + 0x573ad8]
mov byte [esp + 0x14], cl
test ax, ax
je 0x434f7d
xor edx, edx
lea ecx, [esp + 0x18]
mov dl, ah
push edx
push 4
call fcn.00531ad0
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x18]
push eax
push 5
call fcn.00531ad0
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
lea edx, [esp + 0x28]
mov ecx, esp
mov dword [esp + 0x40], esp
push edx
mov byte [esp + 0x68], 6
call fcn.00531810
mov ecx, 0x5c6628
mov byte [esp + 0x64], 3
call fcn.00533b90
mov al, byte [esp + 0x12]
mov cl, byte [esp + 0x2c]
cmp cl, al
jbe 0x434fbf
mov eax, dword [esp + 0x2c]
lea ecx, [ebx + ebx*2]
and eax, 0xff
push 2
lea edx, [ebx + ecx*4]
lea ecx, [eax + edx*2]
lea edx, [edi + 0xc]
push edx
mov ax, word [ecx*2 + 0x573ad4]
movsx eax, ax
lea eax, [eax + eax*4]
lea ecx, [eax*8 + 0x59d85c]
push ecx
lea ecx, [edi + 0x78]
call fcn.0043cb50
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x64], 7
mov ecx, esp
mov dword [esp + 0x40], esp
push 6
push 0x59c0e4
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x64], 3
call fcn.00533b90
mov eax, dword [esp + 0x5c]
lea edx, [esp + 0x3c]
push edx
push eax
mov ecx, edi
call fcn.00435600
push esi
push 5
lea ecx, [esp + 0x2c]
call fcn.00531ad0
movzx cx, byte [esp + 0x12]
mov word [esp + 0x12], cx
push ecx
lea edx, [esp + 0x28]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
call fcn.00531810
mov ecx, dword [0x5c6634]
call fcn.005396d0
mov ax, word [esp + 0x12]
cmp ax, 1
jl 0x435089
mov ecx, dword [esp + 0x1c]
movsx ebp, ax
lea esi, [ecx + 0x573acb]
mov dl, byte [esi]
lea ecx, [esp + 0x20]
push edx
push 5
call fcn.00531ad0
push 1
push ecx
lea eax, [esp + 0x28]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.00531810
mov ecx, dword [0x5c6634]
call fcn.00539850
inc esi
dec ebp
jne 0x435059
mov cl, byte [esp + 0x3c]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x44], esp
mov dword [esp + 0x44], esi
mov byte [esi], cl
mov ecx, dword [esp + 0x50]
test ecx, ecx
jne 0x4350a8
xor eax, eax
jmp 0x4350b1
mov eax, dword [esp + 0x54]
sub eax, ecx
sar eax, 2
test eax, eax
jge 0x4350b7
xor eax, eax
lea edx, [eax*4]
push edx
call fcn.00556a96
mov dword [esi + 4], eax
mov ecx, dword [esp + 0x58]
mov ebp, dword [esp + 0x54]
add esp, 4
mov esi, eax
cmp ebp, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x3c], esi
je 0x43510c
mov dword [esp + 0x48], esi
test esi, esi
mov byte [esp + 0x64], 8
je 0x4350f5
push ebp
mov ecx, esi
call fcn.00531810
mov eax, dword [esp + 0x40]
add ebp, 4
add esi, 4
cmp ebp, eax
mov byte [esp + 0x64], 3
mov dword [esp + 0x3c], esi
jne 0x4350e0
mov eax, dword [esp + 0x44]
mov ecx, edi
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
call fcn.00435420
test ax, ax
je 0x4352da
mov ecx, dword [0x5c6634]
call fcn.00539bf0
mov bp, ax
inc ebp
test bp, bp
je 0x435025
mov al, byte [esp + 0x5c]
cmp al, 1
jbe 0x43514e
cmp al, 5
jne 0x435248
movsx eax, bp
dec eax
je 0x4351f7
dec eax
je 0x4351b3
dec eax
jne 0x435025
lea eax, [ebx + ebx*2]
lea ecx, [ebx + eax*4]
mov al, byte [ecx*4 + 0x573ada]
cmp al, 0xff
mov byte [esp + 0x28], al
je 0x435199
mov eax, dword [esp + 0x28]
lea edx, [edi + 0xc]
and eax, 0xff
push 2
push edx
lea eax, [eax + eax*4]
lea ecx, [eax*8 + 0x59d85c]
push ecx
lea ecx, [edi + 0x78]
call fcn.0043cb50
mov edx, dword [esp + 0x1c]
movzx ax, byte [edx + 0x573aca]
cmp bp, ax
je 0x43533d
jmp 0x435025
movzx cx, byte [esp + 0x14]
mov edx, dword [esp + 0x1c]
cmp cx, word [edx + 0x573ad8]
jbe 0x43523b
mov al, byte [esp + 0x14]
push 2
dec al
mov byte [esp + 0x18], al
lea eax, [edi + 0xc]
push eax
mov eax, dword [esp + 0x1c]
and eax, 0xff
lea ecx, [eax + eax*4]
lea edx, [ecx*8 + 0x59d85c]
lea ecx, [edi + 0x78]
push edx
call fcn.0043cb50
jmp 0x435025
movzx ax, byte [esp + 0x14]
mov ecx, dword [esp + 0x1c]
cmp ax, word [ecx + str.0___]
jae 0x43523b
mov al, byte [esp + 0x14]
lea edx, [edi + 0xc]
inc al
push 2
mov byte [esp + 0x18], al
push edx
mov eax, dword [esp + 0x1c]
and eax, 0xff
lea eax, [eax + eax*4]
lea ecx, [eax*8 + 0x59d85c]
push ecx
lea ecx, [edi + 0x78]
call fcn.0043cb50
jmp 0x435025
push 0
call dword [sym.imp.USER32.dll_MessageBeep]
jmp 0x435025
lea edx, [ebx + ebx*2]
cmp al, 3
lea ecx, [ebx + edx*4]
movsx edx, bp
lea ecx, [edx + ecx*2]
mov dl, byte [ecx*2 + 0x573ad4]
mov byte [esp + 0x28], dl
mov esi, dword [esp + 0x28]
jne 0x43529a
cmp bp, 3
jne 0x43529a
lea eax, [edi + 0xc]
push 2
push eax
mov eax, esi
and eax, 0xff
lea ecx, [eax + eax*4]
lea edx, [ecx*8 + 0x59d884]
lea ecx, [edi + 0x78]
push edx
call fcn.0043cb50
push 0x1f4
call fcn.0043d4c0
add esp, 4
cmp byte [esp + 0x28], 0xff
je 0x4352c0
and esi, 0xff
lea eax, [edi + 0xc]
push 2
push eax
lea ecx, [esi + esi*4]
lea edx, [ecx*8 + 0x59d85c]
lea ecx, [edi + 0x78]
push edx
call fcn.0043cb50
mov eax, dword [esp + 0x1c]
movzx cx, byte [eax + 0x573aca]
cmp bp, cx
je 0x43538d
jmp 0x435025
lea ecx, [esp + 0x18]
mov byte [esp + 0x54], 2
call fcn.00531940
lea ecx, [esp + 0x20]
mov byte [esp + 0x54], 1
call fcn.00531940
lea ecx, [esp + 0x24]
mov byte [esp + 0x54], 0
call fcn.00531940
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
cmp esi, eax
mov dword [esp + 0x54], 0xffffffff
mov edi, eax
je 0x43532c
mov ecx, esi
call fcn.00531940
add esi, 4
cmp esi, edi
jne 0x43531a
mov esi, dword [esp + 0x40]
push esi
call fcn.00556360
add esp, 4
xor ax, ax
jmp 0x4353ec
lea ecx, [esp + 0x18]
mov byte [esp + 0x54], 2
call fcn.00531940
lea ecx, [esp + 0x20]
mov byte [esp + 0x54], 1
call fcn.00531940
lea ecx, [esp + 0x24]
mov byte [esp + 0x54], 0
call fcn.00531940
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
cmp esi, eax
mov dword [esp + 0x54], 0xffffffff
mov edi, eax
je 0x4353df
mov ecx, esi
call fcn.00531940
add esi, 4
cmp esi, edi
jne 0x43537d
jmp 0x4353db
lea ecx, [esp + 0x18]
mov byte [esp + 0x54], 2
call fcn.00531940
lea ecx, [esp + 0x20]
mov byte [esp + 0x54], 1
call fcn.00531940
lea ecx, [esp + 0x24]
mov byte [esp + 0x54], 0
call fcn.00531940
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
cmp esi, eax
mov dword [esp + 0x54], 0xffffffff
mov edi, eax
je 0x4353df
mov ecx, esi
call fcn.00531940
add esi, 4
cmp esi, edi
jne 0x4353cd
mov esi, dword [esp + 0x40]
push esi
call fcn.00556360
add esp, 4
mov ax, 1
mov ecx, dword [esp + 0x4c]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x48
ret 4